我想为我的WordPress博客创建一个自定义页面,将在其中执行我的PHP代码,同时保留整体网站CSS/主题/设计的一部分。
PHP代码将使用第三方api(因此我需要包括其他PHP文件)。
我该怎么做呢?
注:我没有特定的需要与WordPress API交互-除了包括某些其他PHP库,我需要我没有其他依赖的PHP代码,我想包括在WordPress页面。所以很明显,任何不需要学习WordPress API的解决方案都是最好的。
我想为我的WordPress博客创建一个自定义页面,将在其中执行我的PHP代码,同时保留整体网站CSS/主题/设计的一部分。
PHP代码将使用第三方api(因此我需要包括其他PHP文件)。
我该怎么做呢?
注:我没有特定的需要与WordPress API交互-除了包括某些其他PHP库,我需要我没有其他依赖的PHP代码,我想包括在WordPress页面。所以很明显,任何不需要学习WordPress API的解决方案都是最好的。
当前回答
你不需要与API交互或使用插件。
首先,在主题文件夹(在/wp-content/themes/themename/下)中复制post.php或page.php。
将新文件重命名为templatename.php(其中templatename是对新模板的称呼)。要将新模板添加到可用模板列表中,请在新文件的顶部输入以下内容:
<?php
/*
Template Name: Name of Template
*/
?>
您可以修改这个文件(使用PHP)以包含其他文件或任何您需要的文件。
然后在WordPress博客中创建一个新页面,在页面编辑屏幕中,您将在右边的Attributes小部件中看到一个Template下拉菜单。选择新模板并发布页面。
新页面将使用templatename.php中定义的PHP代码
来源:创建供全局使用的自定义页面模板
其他回答
你会想看看WordPress的插件API。
这篇文章解释了如何“挂钩”和“过滤”到WordPress机制的不同部分,所以你可以在任何给定的时间在任何地方执行自定义PHP代码。这种挂钩、过滤和自定义代码创作都可以在任何主题的functions.php文件中进行。快乐编码:)
WordPress插件API WordPress挂钩/过滤数据库 WordPress PHPXHref by Yoast
只要你将你的php文件存储在wp-content文件夹中,即在一个主题或插件中,它只需要在文件中获得完整的WP-Power:
$parse_uri = explode( 'wp-content', $_SERVER['SCRIPT_FILENAME'] );
require_once( $parse_uri[0] . 'wp-load.php' );
在此之后,您可以以通常的方式使用WP函数。例如,我在我的歌词插件中使用它来创建一个可打印的个性化PDF文件。
试试这个:
/**
* The template for displaying demo page
*
* template name: demo template
*
*/
除了创建一个自定义模板文件并将该模板分配给一个页面(就像在已接受答案的例子中),还有一种方法是使用模板命名约定,WordPress用于加载模板(模板层次结构)。
创建一个新页面,并使用该页的slug作为模板文件名(创建一个名为page-{slug}.php的模板文件)。WordPress将自动加载符合此规则的模板。
任何答案都不包括如果你需要在WordPress主题之外添加一个PHP页面。就是这条路。
您需要包含wp-load.php。
<?php require_once('wp-load.php'); ?>
然后你就可以使用该页面上的任何WordPress功能了。