Як створити сторінку тільки з модулями і без компонента?


10

У Joomla мені потрібно прив’язати кожну сторінку до перегляду компонентів. Як я можу створити сторінку без вихідних компонентів на ній?

Приклад: На своїй домашній сторінці я хочу лише вихід модуля. Для цього я можу пов’язати домашню сторінку з "порожньою статтею", але чи є кращий спосіб зробити це без використання розширення третьої сторони?


2
Використовуєте персоналізований або комерційний шаблон? Я запитую, тому що у багатьох з них є можливість повністю відключити область компонентів.
Брайан Торф

@BrianPeat Я використовую користувацький шаблон
web-tiki

Ага, гаразд. Ну, є кілька хороших відповідей, які повинні працювати тоді :)
Брайан Піт

2
Аналогічне запитання: joomla.stackexchange.com/questions/5056/…
FFrewin

Відповіді:


15

Не існує насправді «кращого способу», ніж це.

Єдиний інший варіант - перевірити, чи перебуваєте ви на домашній сторінці у файлі шаблону. Щоб перевірити, чи перебуваєте ви на домашній сторінці, ви можете скористатися методом, описаним тут у документах:

http://docs.joomla.org/How_to_determine_if_the_user_is_viewing_the_front_page

і робити щось на кшталт:

<?php
$menu = JFactory::getApplication()->getMenu();

if ($menu->getActive() != $menu->getDefault()) { ?>
        <jdoc:include type="component" />
<?php } ?>

І таким чином ви ніколи не включаєте свій компонент на домашню сторінку


1
Підготуйте цей метод: якщо у вас є посилання з домашньої сторінки, яке не переходить на іншу сторінку, воно може бути зламаним, якщо він завантажується під пунктом меню домашньої сторінки! Слідкуйте за будь-яким подібним посиланням, example.com/component/com_name/viewоскільки воно завантажиться під пунктом меню за замовчуванням, і вихід компонента не відображатиметься.
Девід Фрітш

Ви можете додати ще кілька перевірок, щоб переконатися, що поточний компонент і view ( JFactory::getApplication()->input->get('view')) також не збігаються з поданням меню ( $menu->getActive()->view)
David Fritsch,

@DavidFritsch: Я думаю, що $ menu-> getActive () -> view, має бути $ menu-> getActive () -> query ['view'];
FFrewin

5

У JED також є "порожній" компонент, який дозволяє публікувати пункт меню, щоб ви могли розміщувати лише модулі.

http://extensions.joomla.org/extensions/style-a-design/personal-layout/17363


У мене виникла проблема з цим розширенням, воно не включає, router.phpщо призводить до того, що недійсні URL-адреси не відповідають на 404.
Flimm

4

Ви можете мати кілька макетів шаблонів у вашому індексному файлі.

<!--Layout 1-->
<?php if ($BConfig->html=='layoutA') : ?>

<jdoc:include type="component" />

<?php endif; ?>  <!--End Layout 1-->

<!--Dynamically Generated Layout 2-->
<?php if ($BConfig->html=='layoutB') : ?>

<jdoc:include type="modules" name="your-module"/>

<?php endif; ?> <!--End Layout 2-->

Потім переконайтеся, що ваш файл templateDetails містить варіант B. Потім у вашому Joomla! шаблони, ви можете встановити додатковий шаблон за допомогою макета b. Перейдіть до пункту домашнього меню, виберіть цей шаблон. Компонент не завантажиться, але ваш модуль буде.


2

Дурне, дуже схоже, але досить просте рішення:

  1. Створіть категорію статті
  2. Залиште його без вмісту (статті)
  3. Створіть посилання на меню до нього
  4. Призначте свої модулі до цього посилання на меню

Можливо, вам потрібно буде вимкнути деякі параметри, які потрібно приховати для цієї категорії, у параметрах категорії та / або пунктах меню.


1
Це в основному те саме, що використовувати порожню статтю.
web-tiki

1

Можна створити порожній компонент. Отже, у компоненті com_menus ви можете вирішити, що сторінка не повинна мати вихід, просто вибираючи цей порожній компонент. У цьому компоненті вам потрібно створити представлення і порожній шаблон default.php з файлом default.xml, тож ви побачите цю опцію, коли збираєтесь вибрати компонент у компоненті com_menus.


1

У RocketThemes є зручна функція для приховування викладених статей com_content.

Я використовую для публікації порожньої категорії, щоб мінімізувати вихід, і приховати його деяким стилем CSS.


1

Скопіюйте шаблон, вийміть компонент jdoc і призначте його стилю будь-якому пункту меню, не вимагає компонента.


0

У Joomla! 3.x Ви можете зробити наступне:

  • Спочатку створіть свої модулі,
  • Створіть нову категорію всередині нової статті для головного сайту,
  • Перевірте, чи ввімкнено модулі вмісту плагінів - завантажуйте

За замовчуванням Joomla! включає бібліотеку під назвою Bootstrap v2.3.2 , тому ви можете використовувати css у цій бібліотеці, наприклад, сітчасту систему : http://getbootstrap.com/2.3.2/scaffolding.html#gridSystem

  • Звідси у вашій статті ви можете побачити кнопку під назвою Модуль , просто створіть просту або дуже складну сітку та призначте свої модулі кожному блоку.

Перевага, яку ви можете отримати, використовуючи цей спосіб, полягає в тому, що ви можете отримати в шаблоні більше світла з меншою кількістю позицій і меншим кодом php, js та css, тому якщо вам не потрібно багато функцій, ви можете створити його самостійно.

З повагою


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.