【问题标题】:Get the child pages id wordpress [duplicate]获取子页面 id wordpress [重复]
【发布时间】:2020-04-17 03:58:45
【问题描述】:

我对 wordpress 和 php 很陌生,所以如果答案可能已经发布,请提前原谅,但我到处寻找,找不到解决问题的方法。或者至少我从未尝试过任何想法,而且当我查看函数和钩子以了解它是如何工作时,wordpress 文档对我来说仍然非常复杂。 我基本上在我的主页上制作了一个幻灯片,显示子页面的特征图像。我的侧边导航中有图像的缩略图,主要内容部分有幻灯片。基本上,我通过输入每张幻灯片的特定 ID 来检索每个子页面的 ID,但我想让所有这些动态并循环整个内容,但我无法动态输出子页面 ID。这是我现在使用的硬代码:

<div id="contentContainer">
<div id="wrapper">
    <div id="itemOne" class="content">
    <?php 
     $image_id=get_post_thumbnail_id(192);
     $image_url=wp_get_attachment_image_src($image_id,'full-size');
     echo '<img src="'.$image_url[0].'">';
    ?>

    </div>

    <div id="itemTwo" class="content">
    <?php 
        $image_id=get_post_thumbnail_id(196);
        $image_url=wp_get_attachment_image_src($image_id,'full-size');
        echo '<img src="'.$image_url[0].'">';

        ?>
    </div>
    <div id="itemThree" class="content">
    <?php
        $image_id=get_post_thumbnail_id(198);
        $image_url=wp_get_attachment_image_src($image_id,'full-size');
        echo '<img src="'.$image_url[0].'">';

        ?>
    </div>
    <div id="itemFour" class="content">
    <?php
        $image_id=get_post_thumbnail_id(200);
        $image_url=wp_get_attachment_image_src($image_id,'full-size');
        echo '<img src="'.$image_url[0].'">';

        ?>
    </div>
</div>

因为稍后我会有比这更多的幻灯片,并且如果我需要在不通过代码的情况下更改图像,我希望让这段代码动态化,并循环尽可能多的幻灯片。 感谢您的帮助!

【问题讨论】:

标签: php html wordpress


【解决方案1】:

您可以使用

获取孩子的页面 id

get_page_children()

这是一个例子:-

    <?php

    // Set up the objects needed
    $my_wp_query = new WP_Query();
    $all_wp_pages = $my_wp_query->query(array('post_type'=>'page','posts_per_page' => '-1'));

    // Get the page as an Object
    $parent_page =  get_page_by_title('parent_page_title');

    // Filter through all pages and find page's children
    $page_children = get_page_children( $parent_page->ID, $all_wp_pages );

    // echo children page id from $page_children array
    foreach($page_children as $children):
     echo '<pre>';
     print_r($children->ID);
     echo '</pre>';
    endforeach;
   ?>

【讨论】:

  • 非常感谢!所以现在它显示了我的子页面的 ID 列表。我将此代码放入一个名为 get_children_ID() 的自定义函数中; .现在我怎样才能只选择该数组的特定 ID?例如,我只想要第一张幻灯片的第一个子页面的 ID,而我需要第二张幻灯片的第二个 ID,依此类推。非常感谢你,很抱歉成为这样的新手,它仍然非常模糊,我不确定我需要寻找什么。
  • 您必须为此修改代码,但是您可以将滑块代码放入此代码的 foreach 循环中,这样您就可以在获取数组中子页面的 id 时直接获取图像..或您可以通过在 $page_children 数组上使用数组索引来获取特定的 id。但是如果您需要更多帮助,您需要展示您所做的事情以及您在哪里遇到问题。如果此答案解决了您获取儿童页面 id 的查询,那么请接受它并开始新问题或使用您的编辑此问题最新代码..
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-08
  • 2020-04-20
  • 1970-01-01
  • 2014-04-16
相关资源
最近更新 更多