【问题标题】:Hack an existing Wordpress template to display content from specific page破解现有的 Wordpress 模板以显示来自特定页面的内容
【发布时间】:2017-08-27 02:02:52
【问题描述】:

我正在使用一个拥有自己的模板集的 Wordpress 插件,我想破解其中一个模板来显示特定页面 (ID 129) 的内容。

我尝试了几种不同的解决方案,我在互联网上找到了从“循环”到双循环到仅尝试简单的行 <?php get_post( $id=129, $output=OBJECT, $filter=display ); ?>。最好的情况是原始插件页面显示没有修改,最坏的情况是我打破它并得到一个空白页面。

【问题讨论】:

  • 请将您的解决方案添加为自动回复,以便您可以将其标记为选定答案:)

标签: wordpress templates


【解决方案1】:

只显示页面内容而不显示标题,我需要通过插件的 CSS 来设置样式,但它正在显示!!!我这样做了:

<?php $examplePost = get_post(129);

echo apply_filters( 'the_content', $examplePost->post_content ); ?>

【讨论】:

    【解决方案2】:

    当您执行$that_page = get_post(129); 时,变量$that_page 将保存与实体129 关联的所有数据。

    你可以这样做:

    $that_page = get_post(129);
    echo '<pre>';
    die(var_dump($that_page));
    

    它会打印所有可用的内容。要访问 $that_page 的属性,请使用 -&gt; 表示法。您可能正在寻找:

    $that_page->post_title;
    $that_page->post_content;
    

    正如您已经知道的那样,打印它们的最佳方法是:

    echo apply_filters('the_content', $that_page->post_content);
    echo apply_filters('the_title', $that_page->post_title);
    

    apply_filters 函数会转换提供的字符串(内容或标题)以确保其安全并正确显示。例如,the_content 过滤器将新行(使用 Enter 键进行的换行)转换为段落 (&lt;p&gt;text&lt;/p&gt;) 或换行符 (&lt;br&gt;)。

    对于其他类型的数据,上述过滤器是不合适的。您可以简单地执行echo $that_page-&gt;some_property;,但请注意,根据财产所持有的价值类型,可能需要进行某种卫生处理。

    【讨论】:

      猜你喜欢
      • 2015-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-23
      • 1970-01-01
      相关资源
      最近更新 更多