2014-08-31 2 views
1

ImpressPages 4.x에서 플러그인이 설치되고 상태를 어떻게 확인할 수 있습니까?ImpressPages 4.x에서 플러그인이 활성화되어 있는지 확인하려면 어떻게해야합니까?

RSS 플러그인이 설치되어 있고 활성화되어 있으면 rss 피드 링크를 표시하고 싶습니다. 플러그인 상태를 확인하는 함수가 있습니까? 나는 ipGetOption()으로 시도했지만, 플러그인이 활성화되어 있는지 여부에 관계없이 항상 옵션이 저장되었습니다. Plugin 상태가 isActive 열이어야합니다.

<?php if($rss_url = ipGetOption('Rss.rssUrl')): ?> 

    <li class="rss"><a href="<?php echo $rss_url; ?>" title="RSS" target="_blank">RSS</a></li> 

<?php endif; ?> 

답변

2

"올바른"방법이 없습니다. 그럼에도 불구하고 내부 방법을 사용하여 여러 가지 방법으로 수행 할 수 있습니다. 가장 간단한 방법은 다음과 같습니다.

<?php 
    $activePlugins = \Ip\Internal\Plugins\Service::getActivePluginNames(); 
    if(in_array('Rss', $activePlugins)) { 
     $rss_url = ipGetOption('Rss.rssUrl'); 
?> 

<li class="rss"><a href="<?php echo $rss_url; ?>" title="RSS" target="_blank">RSS</a></li> 

<?php } ?> 

이 서비스 메서드는 매번 DB 쿼리를 실행합니다. 따라서 조심스럽게 사용하십시오.

+0

약간 길었지만 훌륭했습니다. ;) – Bora

관련 문제