2017-07-20 7 views
0

私は自分のコードに条件を追加して、ラベルをクリックした後で別のページにリンクするようにしたいと思います。今このコードはウェブサイトの他の記事にリンクしています。だから私はラベルから他のページに入るために何を追加すべきかと思います。空白のページにリンクし、PHPコードの新しい条件を追加

ありがとうございました! 私のコードは以下の通りです:PHPコードの

 <ul class="nav nav-tabs aboutUsTabs nav-justified" role="tablist"> 
    <?php foreach ($this->items as $key=>$item){ 

     if($item['children']){ ?> 
      <li role="presentation" class="<?php if($item['menu']->id==$this->pageId || $item['menu']->id==$this->parentId){ echo 'active'; } ?>"><a href="#about-us-page-<?php echo $item['menu']->id;?>" aria-controls="about-us-page-<?php echo $item['menu']->id;?>" role="tab" data-toggle="tab"><?php echo $item['menu']->title;?></a></li> 

     <?php }else{ ?> 
       <li role="presentation" class="<?php if($item['menu']->id==$this->pageId || $item['menu']->id==$this->parentId){ echo 'active'; } ?>"><a href="<?php echo $item['menu']->path;?>" aria-controls="about-us-page-<?php echo $item['menu']->id;?>"><?php echo $item['menu']->title;?></a></li> 
     <?php } ?> 
<?php } ?> 
    </ul> 
+0

あなたのコードをクリーンアップすることをお勧めしますか?PHPとHTMLを絶えず切り替えないでください。 https://pastebin.com/7FKiFaKp – GrumpyCrouton

答えて

1

すべてこのスタート/ストップは、私の目が痛いです!とにかく、他のページへのリンクは<a href=""></a>タグで行われます。私はあなたの質問を理解していますが、(フォーム要素のラベルを意味するならば)このようなことをすることができます。

<label for=""> <a href="SOME_PAGE.html"> Something Meaningful </a> </label> 

私は申し訳ありませんが、私はあなたのコードを少しきれいにする自由を取った。うまくいけば、これにより読みやすくなります。あなたのコメントの質問については

<ul class="nav nav-tabs aboutUsTabs nav-justified" role="tablist"> 
<?php 

foreach ($this->items as $key=>$item){ 

    $active = NULL; 
    if($item['menu']->id==$this->pageId || $item['menu']->id==$this->parentId){ 
     $active = 'active'; 
    } 

    $menu = NULL; 
    if($item['menu']->id==$this->pageId || $item['menu']->id==$this->parentId){ 
     $menu = 'active'; 
    } 

    if($item['children']){ 
     echo'<li role="presentation" class="'.$active.'"> 
       <a href="#about-us-page-'.$item['menu']->id.'" aria-controls="about-us-page-'.$item['menu']->id.'" role="tab" data-toggle="tab">'.$item['menu']->title.'</a> 
      </li>'; 

    }else{ 
     echo'<li role="presentation" class="'.$menu.'"> 
       <a href="'.$item['menu']->path.'" aria-controls="about-us-page-'.$item['menu']->id.'">'.$item['menu']->title.'</a> 
      </li>'; 
    } 
} 

?> 
</ul> 

、あなたは別の値を必要とするどのような項目を知っていれば、それはtitle f.ex.可能性その値と照合して要素の出力を変更することができます。多分何かのような;

if($item['children']){ 

    if($item['title'] == 'Unique Identifier for your element') { 
     // In here you could manipulate the output of that one item you want to exclude/change 

    } else { 
     // Your normal output 
     echo'<li role="presentation" class="'.$active.'"> 
        <a href="#about-us-page-'.$item['menu']->id.'" aria-controls="about-us-page-'.$item['menu']->id.'" role="tab" data-toggle="tab">'.$item['menu']->title.'</a> 
       </li>'; 

}else{ ... } 

さらに、事前にチェックを実行することがより効果的です。

$link = '#about-us-page-'.$item['menu']->id; 
if($item['title'] == "That identifier") { 
    $link = 'somethingElse'; 
} 

hrefタグの値を次のように変更します。

<a href="'.$link.'" aria-controls="about-us-page-'.$item['menu']->id.'" role="tab" data-toggle="tab">'.$item['menu']->title.'</a> 
+0

最初の条件は、ページ上のすべてのラベルを参照し、適切なラベルのWebサイトリンクをクリックした後、ページ上の記事に正確にリンクした後です。私は1つのラベルのための例外をしたいと思います、そして、このラベルは私にページの記事を示すべきではありませんが、別のウェブサイトに連れて行きます。私はPHPコードでこの1つのラベルを参照する方法を知らない。それが私の問題です。今はあなたの方がはっきりしていますか? –

+0

除外する1つのラベルの一意の識別子はありますか?たぶん '['title']' - もしそうなら、あなたは 'if'文のようなものを実行して出力を変更することができます。 if($ item ['menu'] - > title == '除外したい項目'){...} else {...} ' – Jeppesen

+0

私はあなたのきれいなコードが好きです。質問に対する回答がありますが、次のようにコードをクリーンアップしました:https://pastebin.com/7FKiFaKp – GrumpyCrouton

関連する問題