Làm thế nào để tạo trang chỉ với các mô-đun và không có thành phần?


10

Trong j Joomla, tôi cần liên kết mỗi trang với một khung nhìn thành phần. Làm cách nào để tạo một trang không có đầu ra thành phần trên đó?

Ví dụ: Trên trang chủ của tôi, tôi chỉ muốn một đầu ra mô-đun. Đối với điều này, tôi có thể liên kết trang chủ với một "bài viết trống" nhưng có cách nào tốt hơn để làm điều này mà không cần sử dụng tiện ích mở rộng của bên thứ ba không?


2
Bạn đang sử dụng một mẫu tùy chỉnh, hoặc một mẫu thương mại? Tôi yêu cầu bởi vì nhiều người trong số họ có một tùy chọn để tắt hoàn toàn khu vực thành phần.
Brian Peat

@BrianPeat Tôi đang sử dụng một mẫu tùy chỉnh
web-tiki

À được rồi. Vâng, có một số câu trả lời tốt ở đây nên hoạt động sau đó :)
Brian Peat

Câu trả lời:


15

Thực sự không có "cách nào tốt hơn".

Tùy chọn duy nhất khác là kiểm tra xem bạn có ở trang chủ trong tệp mẫu của bạn không. Để kiểm tra xem bạn có ở trang chủ không, bạn có thể sử dụng phương pháp được mô tả trên các tài liệu ở đây:

http://docs.j Joomla.org/How_to_determine_if_the_user_is_viewing_the_front_page

và làm một cái gì đó như:

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

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

Và theo cách đó bạn không bao giờ bao gồm thành phần của bạn trên trang chủ


1
Hướng dẫn phương pháp này: nếu bạn có một liên kết từ trang chủ không đến trang khác, nó có thể bị hỏng nếu tải dưới mục menu trang chủ! Theo dõi bất kỳ liên kết nào giống như example.com/component/com_name/viewnó sẽ tải dưới mục menu mặc định và đầu ra của thành phần sẽ không được hiển thị.
David Fritsch

Bạn có thể muốn thêm một vài kiểm tra để đảm bảo rằng thành phần hiện tại và chế độ xem ( JFactory::getApplication()->input->get('view')) cũng không giống với chế độ xem của menu ( $menu->getActive()->view)
David Fritsch

@DavidFritsch: Tôi nghĩ rằng $ menu-> getActive () -> view, nên là $ menu-> getActive () -> truy vấn ['view'];
FFrewin


4

Bạn có thể có nhiều bố cục mẫu trong tệp chỉ mục của mình.

<!--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-->

Sau đó, đảm bảo tệp templateDetails của bạn bao gồm tùy chọn B. Sau đó, trong Joomla của bạn! các mẫu, bạn có thể thiết lập một mẫu bổ sung bằng cách sử dụng bố trí b. Đi đến mục menu nhà của bạn, chọn mẫu đó. Thành phần sẽ không tải, nhưng mô-đun của bạn sẽ.


2

Giải pháp ngu ngốc, rất giống nhau, nhưng khá dễ dàng:

  1. Tạo một thể loại bài viết
  2. Để lại nó không có nội dung (bài viết)
  3. Tạo liên kết menu với nó
  4. Chỉ định các mô-đun của bạn vào liên kết menu đó

Bạn có thể cần phải tắt một số chi tiết để được ẩn cho danh mục đó trong danh mục và / hoặc các tham số mục menu.


1
Điều này là cơ bản giống như sử dụng một bài viết trống.
web-tiki

1

Bạn có thể tạo một thành phần trống. Vì vậy, trong thành phần com_menus, bạn có thể quyết định với trang không được có đầu ra mà chỉ chọn thành phần trống đó. Trong thành phần đó, bạn cần tạo một khung nhìn và một mẫu default.php trống với tệp default.xml, vì vậy bạn sẽ thấy tùy chọn này khi bạn sẽ chọn thành phần trong thành phần com_menus.


1

RocketTheme có một tính năng tiện dụng để ẩn các bài viết nổi bật của com_content.

Tôi sử dụng để xuất bản một danh mục trống để giảm thiểu đầu ra và ẩn nó với một số kiểu CSS.


1

Sao chép mẫu, xóa thành phần jdoc và gán kiểu đó cho bất kỳ mục menu nào không yêu cầu thành phần.


0

Trong Joomla! 3.x bạn có thể làm như sau:

  • Đầu tiên tạo Mô-đun của bạn,
  • Tạo một Danh mục mới, bên trong một Điều khoản mới cho trang web chính,
  • Kiểm tra xem bạn đã bật Nội dung Plugin - Mô-đun tải chưa

Theo mặc định Joomla! bao gồm một thư viện có tên Bootstrap v2.3.2 , vì vậy bạn có thể sử dụng css trong thư viện này, ví dụ : hệ thống lưới : http://getbootstrap.com/2.3.2/scaffolding.html#gridSystem

  • Từ đây, trong bài viết của bạn, bạn có thể thấy một nút có tên Mô-đun , chỉ cần tạo một lưới đơn giản hoặc rất phức tạp và gán các mô-đun của bạn cho mỗi khối.

Một lợi ích mà bạn có thể nhận được bằng cách sử dụng theo cách này là bạn có thể nhận được một mẫu nhẹ hơn với ít vị trí hơn và ít mã php, js và css hơn, vì vậy nếu bạn không cần nhiều chức năng, bạn có thể tự tạo nó .

Trân trọng.


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.