wordpress ループ内にあるこの if ステートメントに問題があります。最初の if ステートメント — — は機能しているように見えますが、2 番目のステートメントは、これらの文字列が == でないif ( $caption == "1")
場合でも、常にパスするようです。$image_title
foreach ( $images as $attachment_id => $attachment ) {
// $alt = get_post_meta($attachment->ID, '_wp_attachment_image_alt', true);
$image_title = $attachment->post_title;
$caption = $attachment->post_excerpt;
$description = $attachment->post_content;
$img_url = get_post_meta( $attachment->ID, '_gallery_link_url', true ); //WP Gallery Custom Links extra URL field
if ( $caption == "1") {
echo '<div class="imagewrapb">';
if ($image_title == "Branding" or "Print" or "Digital" or"Packaging") {
echo '<h3>'.$image_title.'</h3>';
echo wp_get_attachment_image( $attachment_id, '' );
echo '<a href="'.$img_url.'">'.'<div class="hover">'.$description.'</div>'.'</a>';
var_dump($image_title);
}
else if ($image_title == "Twitter") {
echo '<h3>'.$image_title.'</h3>';
echo wp_get_attachment_image( $attachment_id, '' );
echo '<div class="twitterfeed"><h2>@V_IX</h2><ul id="twitter_update_list"><li>Twitter feed loading</li></ul></div>';
}
else if ($image_title == "Facebook") {
echo '<h3>'.$image_title.'</h3>';
echo wp_get_attachment_image( $attachment_id, '' );
echo '<div class="facebookfeed">';
include 'facebook.php';
echo '</div>';
}
else {
if ( !empty($img_url) /*img_url exists*/ ){
echo '<h3>'.$image_title.'</h3>';
if ( !empty($description) /*description exists*/ ){
echo wp_get_attachment_image( $attachment_id, '' );
echo '<a href="'.$img_url.'">'.'<div class="hover">'.$description.'</div>'.'</a>';
}
else {
echo '<a href="'.$img_url.'">';
echo wp_get_attachment_image( $attachment_id, '' );
echo '</a>';
}
}
else { /*img_url doesnt exist*/
echo '<h3>'.$image_title.'</h3>';
if ( !empty($description) /*description exists*/ ){
echo wp_get_attachment_image( $attachment_id, '' );
echo '<div class="hover">'.$description.'</div>';
}
else {
echo wp_get_attachment_image( $attachment_id, '' );
}
}
}
echo '</div>';
}
else {
echo '<div class="imagewrap">';
if ($image_title == "Branding" || "Print" || "Digital" || "Packaging") {
echo '<h3>'.$image_title.'</h3>';
echo wp_get_attachment_image( $attachment_id, '' );
echo '<a href="'.$img_url.'">'.'<div class="hover">'.$description.'</div>'.'</a>';
}
else if ($image_title == "Twitter" ) {
echo '<h3>'.$image_title.'</h3>';
echo wp_get_attachment_image( $attachment_id, '' );
echo '<div class="twitterfeed"><h2>@V_IX</h2><ul id="twitter_update_list"><li>Twitter feed loading</li></ul></div>';
}
else if ($image_title == "Facebook") {
echo '<h3>'.$image_title.'</h3>';
echo wp_get_attachment_image( $attachment_id, '' );
echo '<div class="facebookfeed">';
include 'facebook.php';
echo '</div>';
}
else {
if ( !empty($img_url) /*img_url exists*/ ){
echo '<h3>'.$image_title.'</h3>';
if ( !empty($description) /*description exists*/ ){
echo wp_get_attachment_image( $attachment_id, '' );
echo '<a href="'.$img_url.'">'.'<div class="hover">'.$description.'</div>'.'</a>';
}
else {
echo '<a href="'.$img_url.'">';
echo wp_get_attachment_image( $attachment_id, '' );
echo '</a>';
}
}
else { /*img_url doesnt exist*/
echo '<h3>'.$image_title.'</h3>';
if ( !empty($description) /*description exists*/ ){
echo wp_get_attachment_image( $attachment_id, '' );
echo '<div class="hover">'.$description.'</div>';
}
else {
echo wp_get_attachment_image( $attachment_id, '' );
}
}
}
echo '</div>';
}
}
if ステートメントを (私が信じていることは?) 正しいものに変更すると — if (($image_title == "Branding")||($image_title == "Print")||($image_title == "Digital")||($image_title =="Packaging")) {
— 'branding' などの文字列を含む変数が表示されないようです。