1

我正在尝试使用 PHP 为图像滑块输出不同的 HTML,具体取决于 wordpress 网站的正文页面 ID

我已经尝试了以下方法,但是作为 PHP 的新手,我似乎有点吃不消。它只需要简单——我可以通过 CSS 来完成,但我宁愿不加载所有图像,只显示其中的一小部分。如果可能的话,我也宁愿不使用插件。

任何指针将不胜感激。

谢谢

<?php if($id == "page-id-19") {
?>
<div class="imageSlider"><img src="<?php echo bloginfo('template_directory');?>/Images/mainImages/innerPage-Image.jpg" alt="" /><img src="<?php echo bloginfo('template_directory');?>/Images/mainImages/innerPage-Image2.jpg" alt="" /><img src="<?php echo bloginfo('template_directory');?>/Images/mainImages/innerPage-Image3.jpg" alt="" /></div>
<?php
}
elseif ($id == "page-id-23") {
?>
<div class="imageSlider"><img src="<?php echo bloginfo('template_directory');?>/Images/mainImages/innerPage-Image4.jpg" alt="" /><img src="<?php echo bloginfo('template_directory');?>/Images/mainImages/innerPage-Image5.jpg" alt="" /><img src="<?php echo bloginfo('template_directory');?>/Images/mainImages/innerPage-Image6.jpg" alt="" /></div>
<?php
}
?>

**更新* * **

我意识到 id 实际上是一个类。

例如。"body class="page page-id-19 page-template page-template-inner-page-php"

但是,当使用下面建议的解决方案时,它根本不会将任何 HTML 输出到页面......它通过包含被调用到模板页面 -

    <?php
   switch($class){
     case "page-id-19":
?>
         <div class="imageSlider"><img src="<?php echo bloginfo('template_directory');?>/Images/mainImages/innerPage-Image.jpg" alt="" /><img src="<?php echo bloginfo('template_directory');?>/Images/mainImages/innerPage-Image2.jpg" alt="" /><img src="<?php echo bloginfo('template_directory');?>/Images/mainImages/innerPage-Image3.jpg" alt="" /></div>
<?php   
     break;
     case "page-id-23":
?>
         <div class="imageSlider"><img src="<?php echo bloginfo('template_directory');?>/Images/mainImages/innerPage-Image4.jpg" alt="" /><img src="<?php echo bloginfo('template_directory');?>/Images/mainImages/innerPage-Image5.jpg" alt="" /><img src="<?php echo bloginfo('template_directory');?>/Images/mainImages/innerPage-Image6.jpg" alt="" /></div>
<?php
     break;
   }
?>
4

2 回答 2

1

而不是$id,尝试使用$post->ID

或者,您需要使用以下命令创建 $id:

$id = $post->ID;
于 2012-07-04T12:36:42.863 回答
0

我可能误解了这个问题,但我理解你在问什么的方式,我认为你最好使用开关来实现这一点。

开关:

<?php
   switch($id){
     case "page-id-a":
?>
         Put your HTML here.
<?php   
     break;
     case "page-id-b":
?>
         Put your HTML here.
<?php
     break;
   }
?>

我把page-id-apage-id-b放在哪里,让这些成为你目前拥有的page-id-23等。

它并不像看起来那么复杂,而且非常合乎逻辑。

您可以在以下位置阅读有关开关的更多信息:

http://www.w3schools.com/php/php_switch.asp

于 2012-07-04T12:24:57.660 回答