【问题标题】:Wordpress Template. Display contents of a Text WidgetWordPress 模板。显示文本小部件的内容
【发布时间】:2015-05-08 22:27:31
【问题描述】:

我已经创建了一个 wordpress 模板。

我已将一些 HTML 添加到 Text 小部件中并保存。

有没有办法在我的模板中添加一些代码,以便我可以显示该小部件?

这是否可能,而不必将 html 代码直接输入到我的模板中?

【问题讨论】:

    标签: php wordpress wordpress-theming


    【解决方案1】:

    您的文本小部件将位于边栏内。因此,如果您有一个名为“left-sidebar”的侧边栏,您可以在模板中使用这样的代码。

    <?php if ( is_active_sidebar( 'left-sidebar' ) ) : ?>
      <ul id="sidebar">
        <?php dynamic_sidebar( 'left-sidebar' ); ?>
      </ul>
    <?php endif; ?>
    

    现在您放在左侧边栏中的所有小部件都将自动包含在该模板中。

    这里有关于dynamic_sidebar的更多信息:https://codex.wordpress.org/Function_Reference/dynamic_sidebar

    请注意,您还可以在 functions.php 中使用 register_sidebar 创建新的侧边栏,因此如果您想在不同的模板中使用不同的侧边栏,您可以。 https://codex.wordpress.org/Function_Reference/register_sidebar

    【讨论】:

      【解决方案2】:

      是的,事实上它非常简单,您必须创建一个侧边栏,以便让该小部件去往何处。在您的主 php 文件或您希望该小部件出现的任何位置中,您可以添加以下代码:

       <?php if ( !function_exists('dynamic_sidebar')
          || !dynamic_sidebar('sidebar1') ) : ?>
          <?php endif; ?>

      然后您还必须在 functions.php 文件中声明该边栏,如下所示:

      if ( function_exists('register_sidebar') )
      register_sidebar(array('name'=>'sidebar1',
      'before_widget' => '',
      'after_widget' => '',
      'before_title' => '',
      'after_title' => '',
      ));

      您可以拥有任意数量的侧边栏,只需给它们起一个不同的名称,例如 sidebar2 等。

      【讨论】:

      • 好的,我已将此代码添加到我的模板和 function.php 并打开了小部件区域,但那里看不到任何侧边栏。我是不是忘记了什么?
      • 如果没有完全看清楚你的代码很难说,也许你有 index.php、page.php、post.php 之类的,也许你看错了页面类别?
      • 我通常只使用wpsiteconvertor.com 上的免费程序将我的 html 网站转换为 wordpress,这段代码是我从他们那里得到的,它在我的网站上运行良好
      • 尝试从您的主页粘贴代码,例如在 header.php 上,看看是否可行?因为这应该在整个网站范围内都有效。
      • 是的,它应该在那个小部件区域中显示 sidebar1,所以看起来它可能没有在 functions.php 文件中正确设置
      猜你喜欢
      • 1970-01-01
      • 2020-03-30
      • 1970-01-01
      • 1970-01-01
      • 2013-09-02
      • 1970-01-01
      • 1970-01-01
      • 2011-12-14
      • 2023-03-10
      相关资源
      最近更新 更多