0

ここで少し問題が発生しました。ご協力をお願いします。

ユーザーがJoomlaにログインした後に表示される一種のメニューを作成しようとしています(ただし、joomlaであるという事実は重要ではありません)。2 人の異なるユーザーに対して 2 つの異なる出力があります。ユーザーがユーザー A の場合は出力 A が表示され、ユーザー B の場合は出力 B が表示されます。

「ユーザーが誰であるかを見て---出力を与える」部分の実行方法はすでに理解しています。そして、それは完璧に機能しています。問題は出力自体です。画像とテキストの両方をリンクとして含む div をエコーし​​ようとしています。ただし、私が得ている唯一の出力はテキストであり、形式はまったくありません。

コードは次のとおりです。

<?php 

$user =& JFactory::getUser();
if ($user->id == 291) {

 echo <<<EOS

<div class="mitribu"><a href="index.php?option=com_content&amp;view=category&amp;layout=blog&amp;id=13"><img class="mitribuimg" src="images/banners/books.png" alt="books"/>Mi tribu</a></div>

EOS;

}

?>

ご覧のとおり、これにより画像とテキスト Mi tribu がレンダリングされ、それがリンクになります。しかし、私が得ているのはプレーンテキストの Mi tribu だけです。

ここで何が間違っていますか?

事前にどうもありがとうございました!

ヘルナン。


編集:答えが見つかりました。コードをストリッピングしていたのは、Joomla、Sourcerer で記事やモジュール内の PHP をレンダリングするために使用されるプラグインでした。他の誰かが同じ問題を抱えている場合に備えて、ここに解決策があります:

コードを追加するには、{source 0} {/source} を使用する必要があります。0 を追加すると、HTML コードを削除しないようにプラグインに指示します。

4

2 に答える 2

0

以下のように、php コード内で HTML を簡単に実行できます。{ } を使用する代わりに、コロンを使用して以下の html を出力してください。

$user =& JFactory::getUser();
if ($user->id == 291):
?>

<div class="mitribu"><a href="index.php?option=com_content&amp;view=category&amp;layout=blog&amp;id=13"><img class="mitribuimg" src="images/banners/books.png" alt="books"/>Mi tribu</a></div>

<?php endif;?>

またはこれを行うには、HTML で " を使用しているため、必ず ' を使用してください。

<?php 

$user =& JFactory::getUser();
if ($user->id == 291) {



echo '<div class="mitribu"><a href="index.php?option=com_content&amp;view=category&amp;layout=blog&amp;id=13"><img class="mitribuimg" src="images/banners/books.png" alt="books"/>Mi tribu</a></div>'

}

?>
于 2012-08-09T13:13:58.237 に答える
0

Google Chrome で開いてみましたか?次に、画像があるべき場所(テキストなど)を右クリックし、メニューから「要素の検査」を選択します。これにより、Google Chrome からデバッグ ツールが起動し、ブラウザーに出力された内容を確認できるようになり、画像が表示されない理由 (間違ったパスなど) が表示される場合があります。

于 2012-08-09T12:54:11.280 に答える