我认为这个问题是php而不是WordPress ......
我有一段代码输出使用特定WordPress页面模板的页面:
$pages = get_pages(array(
'meta_key' => '_wp_page_template',
'meta_value' => 'page-product.php'
));
foreach($pages as $page){
echo $page->post_title.'<br />';
}
我的问题是如何将post_title包装在链接中(the_permalink()到页面本身)?
答案 0 :(得分:0)
您将执行以下操作:
foreach ( $pages as $page ){
printf( '<a href="%s">%s</a><br />', get_permalink( $page ), $page->post_title );
}
答案 1 :(得分:0)
试试这个..
get_page_link( $page->ID )
在您的代码中..
$pages = get_pages(array(
'meta_key' => '_wp_page_template',
'meta_value' => 'page-product.php'
));
foreach($pages as $page){
echo '<a href="' . get_page_link( $page->ID ) . '">' . $page->post_title.'</a><br />';
}
有关详细信息,Wordpress始终提供有关您使用内容的大量示例和信息。 在这种情况下,我使用Wordpress自己提供的实际代码,因此这将是最好的方法。请参阅https://codex.wordpress.org/Function_Reference/get_pages
答案 2 :(得分:0)
试试这个代码段:
$pages = get_pages(array(
'meta_key' => '_wp_page_template',
'meta_value' => 'page-product.php'
));
foreach($pages as $page){
///Do not forget to escape the title
echo '<a href="' . get_page_link($page->ID) . '">' . esc_html($page->post_title) . '</a>';
}
答案 3 :(得分:0)
感谢您的建议。 bodi0 - 我喜欢esc_html,谢谢。我最终认为它有点不同:
<?php
$studentpages = get_pages(array(
'meta_key' => '_wp_page_template',
'meta_value' => 'students.php'
));
foreach($studentpages as $studentpage){
$studentlinks = get_page_link($studentpage->ID);
echo '<a href=" '.$studentlinks.' ">'.$studentpage->post_title.'</a>' . '<br />';
}
?>