0

私のJoomlaサイトのフロントエンドにログインしているユーザーが、編集ボタンを押すとすぐにテンプレートを適用せずに新しいウィンドウで記事を編集できるようにしたいので、エディター(この場合はJCE)のみ) 示されています。

components/com_content/helpers/Icon.php でソースコードを見つけましたが、それが可能かどうか、またはどのように再コーディングする必要があるかはわかりません。何か案が?

// Show checked_out icon if the article is checked out by a different user
if (property_exists($article, 'checked_out') && property_exists($article, 'checked_out_time') && $article->checked_out > 0 && $article->checked_out != $user->get('id')) {
    $checkoutUser = JFactory::getUser($article->checked_out);
    $button = JHtml::_('image', 'system/checked_out.png', NULL, NULL, true);
    $date = JHtml::_('date', $article->checked_out_time);
    $tooltip = JText::_('JLIB_HTML_CHECKED_OUT').' :: '.JText::sprintf('COM_CONTENT_CHECKED_OUT_BY', $checkoutUser->name).' <br /> '.$date;
    return '<span class="hasTip" title="'.htmlspecialchars($tooltip, ENT_COMPAT, 'UTF-8').'">'.$button.'</span>';
}

$url    = 'index.php?option=com_content&task=article.edit&a_id='.$article->id.'&return='.base64_encode(urlencode($uri));
$icon   = $article->state ? 'edit.png' : 'edit_unpublished.png';
$text   = JHtml::_('image', 'system/'.$icon, JText::_('JGLOBAL_EDIT'), NULL, true);

if ($article->state == 0) {
    $overlib = JText::_('JUNPUBLISHED');
}
else {
    $overlib = JText::_('JPUBLISHED');
}

$date = JHtml::_('date', $article->created);
$author = $article->created_by_alias ? $article->created_by_alias : $article->author;

$overlib .= '&lt;br /&gt;';
$overlib .= $date;
$overlib .= '&lt;br /&gt;';
$overlib .= JText::sprintf('COM_CONTENT_WRITTEN_BY', htmlspecialchars($author, ENT_COMPAT, 'UTF-8'));

$button = JHtml::_('link', JRoute::_($url), $text);

$output = '<span class="hasTip" title="'.JText::_('COM_CONTENT_EDIT_ITEM').' :: '.$overlib.'">'.$button.'</span>';

return $output;
4

1 に答える 1

0

ビューのテンプレートオーバーライドを作成する必要があります.

&tmpl=component

コンポーネント部分のみが表示されるように URL に追加します。を追加します

target="_blank"<a hrefまたは<formタグに追加して、新しいウィンドウに移動します。

ほとんどの場合、これは新しいタブで開きます。新しいウィンドウが必要な場合は、URL を作成してwindow.open呼び出しに渡します。

于 2014-01-15T20:45:45.300 に答える