【发布时间】:2014-06-11 07:02:38
【问题描述】:
如果标题 == MainPage 或类别 == Portal,我不想展示广告。 我正在尝试创建一个 if、elseif、else 语句,但我不确定将 foreach 循环放在哪里。 这是我的代码:
<?php
$id = $wgTitle->getArticleID();
$dbr = wfGetDB( DB_SLAVE );
$result = $dbr->query("SELECT page_id FROM wiki_page ORDER BY page_latest");
while( $row = $dbr->fetchObject( $result ) ) {
foreach($row as $page_id){$m_array = array($page_id);}
}
$title = Title::newFromText( $wgRequest->getVal( 'title' ) );
$categories = $title->getParentCategories();
if(in_array($id, $m_array)){
if($wgTitle == "Main Page"){}
foreach ($categories as $category => $article_title){
elseif($category == 'Category:Portal'){ echo "no ads";}
}
else{echo 'show ads';}
}
?>
我不能将 elseif 放在 foreach 循环中,但是如何指定 $category 子句?如果我将整个代码包装在 foreach 循环中,那么广告会显示多次,因为某些页面有多个类别。
(媒体维基网站) 谢谢
【问题讨论】:
-
这是php?请包含语言标签
标签: php if-statement foreach mediawiki