2016-06-28 18 views
0

記事の日に公開されてから表示されるモジュールを書くには?Joomlaの日付が公開されていません

私はそれを書いたが、それは毎回うまくいかないようだ。

あなたは私を修正できますか?

{source} 

<?php 
    $option = JRequest::getCmd('option'); 
    $view = JRequest::getCmd('view'); 
    if ($option=="com_content" && $view=="article") { 
    $ids = explode(':',JRequest::getString('id')); 
    $article_id = $ids[0]; 
    $article =& JTable::getInstance("content"); 
    $article->load($article_id); 
    $date = new JDate($article->get("publish_up")); 

    $currentTime = new JDate('now'); 

    $interval = $date->diff($currentTime); 

    if($interval->d == 0) { 
      echo 'dzisiaj' . "<br>"; 
     } 
     else if($interval->d == 1) { 
      echo 'wczoraj' . "<br>"; 
     } 
     else if($interval->d > 1) { 
      echo $interval->format('%a dni temu') . "<br>"; 
     } 


} 

?> 

{/source} 

答えて

0

あなたが記事IDを取得する方法は奇妙に見えます。代わりに、このような何か試してみてください:

$app = JFactory::getApplication(); 
$article_id = $app->input->getInt('id'); 

これは、HTTP変数を取得するために、現在のJoomlaのAPIを使用しています(more info here

をそれでも、私はあなたのコードは、あなたがそれをやっている方法を失敗する理由を正確に見るいけません...

+0

私はそれをやったが、今は動作するが、記事のIDが間違っている。 41を取得する必要がありますが、22を取得します。 $ article_id = JFactory :: getApplication() - > input-> get( 'id'); 私はこのラインがうまくいかないと思います。 –

0

おかげで、今私はこの

{source} 
<?php 


    $app = JFactory::getApplication(); 
    $article_id = $app->input->getInt('id'); 
    $article =& JTable::getInstance("content"); 
    $article->load($article_id); 
    $date = new JDate($article->get("published")); 
    $currentTime = new JDate('now'); 
    echo $date; 
    $interval = $date->diff($currentTime); 

    if($interval->d == 0) { 
      echo 'dzisiaj'; 
     } 
     else if($interval->d == 1) { 
      echo 'wczoraj'; 
     } 
     else if($interval->d > 1) { 
      echo $interval->format('%a dni temu'); 
     } 




?> 

{/source} 

のようなものを持っており、それが機能するようになりましたが、それはpublishmentのincorect日付が表示されます。

関連する問題