创建一个包含PHP的短代码,用于WordPress的帖子和页面

时间:2016-12-28 20:24:32

标签: php wordpress shortcode custom-wordpress-pages

我想知道是否有一种方法可以在Wordpress的页面上创建一个可视页面构建器中使用的短代码,这样我就可以将它用作PHP包含。我需要从一个名为form.php的文件中添加一些PHP代码到我的页面中,可视化页面构建器只允许你添加HTML。如果可能的话,我宁愿不使用插件。我需要使用这段代码,但它没有认识到它。

<?php include 'form.php';?>

2 个答案:

答案 0 :(得分:2)

绝对 - 您可以使用一个带有一个参数的短代码(要包含的文件)并简单地输出其内容:

add_shortcode('include', 'include_php_file');
function include_php_file($atts=array(), $content='') {
    $atts = shortcode_atts(array(
        'file' => ''
    ), $atts);
    if(!$atts['file']) return ''; // needs a file name!
    $file_path = dirname(__FILE__).'/'.$atts['file']; // adjust your path here
    if(!file_exists($file_path)) return '';
    ob_start();
    include($file_path);
    $html = ob_get_contents();
    ob_end_clean();
    return $html;
}

希望这有帮助!

答案 1 :(得分:0)

您还可以编辑该页面的模板,并有条件地仅为该帖子包含该文件。

es:

if( is_page('contact') include('path/to/file.php');

如果您需要多个页面中的该文件将数组传递给is_page

if( is_page( array( 'about-us', 'contact', 'management' ) ) 
     //either in about us, or contact, or management page is in view
     include('path/to/file.php');
else
     //none of the page about us, contact or management is in view