Module đóng 1 vai trò rất quan trọng trong trang joomla, việc hiểu và quản lý tốt module sẽ giúp bạn gần như nắm chắc được 70% trong việc quản lý 1 trang bằng joomla. Mình xin chia sẻ với các bạn những cách quản lý đơn giản nhất mà một người mới bắt đầu nên biết.
1 Cách tìm vị trí module trên trang web:
Khi bạn tải và sử dụng một template mà bạn down về, thì để sử dụng nó , bạn cần phải biết nó có những vị trí nào hỗ trợ cho việc hiển thị module, và để biết được điều đó bạn chỉ cần thêm dòng chữ ?tp=1 vào sau đường dẫn là okie. ví dụ : http://mydomain.com/index.php?tp=1 ,Ngoài ra nếu bạn không muốn người khác coi được vị trí module trên trang của mình thì có thể tham khảo bài viết Thủ thuật joomla : Không cho phép xem vị trí module
2 Chèn module vào bài viết :
Đôi khi bạn cần chèn 1 module vào một bài viết để module đó chỉ hiển thị ở trong bài viết đó thôi, ví dụ như bạn đặt module tham khảo ý kiến về người dùng phản ứng thế nào về bài viết đó, và sau khi bạn tao module tham khảo ý kiến thì bạn chèn nó vào bất cứ bài viết nào mà bạn muốn thăm dò, để thực hiện điều này thì bạn chỉ việc chèn đoạn code sau vào vị trí nào đó trong bài viết mà bạn cần đặt module :
{loadposition user666}
Trong đó user666 : là vị trí mà bạn đặt cho module như hình dưới đây
3 Hiển thị module theo menu bài viết:
Đây là cũng là một thủ thuật đáng để quan tâm, khi mà bạn muốn module chỉ hiển thị ở những menu nào thì bạn chỉ cần vào phần Select Menu Item(s) from the List và chọn một hay nhiều menu mà bạn muốn module hiển thị
4 Tự tay làm một module của riêng mình
Nếu bạn là người am hiểu về code và đam mê lập trình thì các bạn có thể tự tay làm cho mình một module và thậm chí là có thể xuất bản module đó và chia sẻ cho mọi người, có nhiều chi tiết phức tạp hơn khi tạo module nhưng bài viết này không chú trọng quá nhiều về yếu tố chuyên môn, mình chỉ hướng dẫn các bạn cách đơn giản nhất. Giả sử chúng ta tạo ra một module xuất ra màn hình dòng chữ “Hello world !”
– Đầu tiên các bạn tìm đến folder modules, rồi sau đó tạo ra một file có cấu trúc như sau module_(tên bạn muốn đặt).php . Ví dụ mình tạo một module với tên là module_demo.php.
– Mở file này ra và chèn đoạn code mình họa sau :
<?php
// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );
echo 'Hello world !';
?>
bây giờ bạn trở lại trang quản trị , và bật module này lên, đặt vào vị trí thích hợp và xem kết quả nhá.
5 cài đặt và gỡ bỏ module :
Đây là việc cơ bản tưởng chừng rất dễ nhưng lại vô cùng bỡ ngỡ đối với người bắt đầu , trong bài viết này mình sẽ không hướng dẫn các bạn làm là vì các bạn có thể tham khảo bài viết Cách cài đặt và gỡ bỏ Plugins, Modules cho joomla mà mình đã hướng dẫn trước đây
6 Nâng cấp module Joomla 1.5 lên joomla 2.5
Sau khi nâng cấp chuyển đổi Joomla! từ phiên bản 1.5 lên 2.5 thì các Module cũ có thể sẽ không hoạt động được. Nếu bạn vẫn muốn sử dụng lại các Module này thì cần phải tải về và cài đặt lại phiên bản tương thích với Joomla! 2.5. Tuy nhiên không phải lúc nào cũng có sẵn phiên bản mới và bạn phải chờ đợi một thời gian nữa. Lúc này bạn có thể xem xét để tự nâng cấp chuyển đổi chúng, nhất là đối với những Module có chức năng đơn giản.
Sau đây là phần hướng dẫn các thay đổi cơ bản trong các tập tin của Module để nâng cấp chuyển đổi chúng từ phiên bản Joomla! 1.5 lên Joomla! 2.5:
Các tập tin .PHP:
Thay dòng:
defined( ‘_JEXEC’ ) or die( ‘Restricted access’ );
Bằng dòng:
defined(‘_JEXEC’) or die;
Ngoài ra có thể bạn cần phải thực hiện thêm một số việc sau nếu Module có các chức năng này:
– Loại bỏ các mã PHP phiên bản 4 vì Joomla! 2.5 đòi hỏi PHP có phiên bản 5.2 hoặc mới hơn.
– Thay đổi các truy vấn cơ sở dữ liệu.
– Loại bỏ đường dẫn /stories từ thư mục hình ảnh mặc định.
Tập tin .XML:
Thay dòng :
<install type="module" version="1.5.0">
</install>
Bằng dòng :
</pre>
<extension type="module" version="2.5.0" client="site" method="upgrade">
</extension>
<pre>
Thay :
</pre>
<params>
<param name="Setting" type="text" default="something" label="Set" description="Set" />
</params>
<pre>
Bằng :
<config>
<fields name="params">
<fieldset name="basic">
<field name="Setting" type="text" default="something" label="Set" description="Set" />
</fieldset>
</fields>
</config>
Nếu có thêm các field khác, thiết lập đường dẫn đến các field này trong thẻ <fields>, như sau:
Thay :
<params addpath=”/modules/your_module_dir/elements”>
Bằng :
<fields name=”params” addfieldpath=”/modules/your_module/elements”>
Thay toàn bộ phần Advanced Parameter mặc định của Joomla! 1.5:
<params group=”advanced”>
</params>
Bằng phần Advanced Parameter mặc định của Joomla! 2.5:
<fieldset name="advanced">
<field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" description="JFIELD_ALT_MODULE_LAYOUT_DESC" />
<field name="moduleclass_sfx" type="text" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" description="COM_MODULES_FIELD_MODULECLASS_SFX_DESC" />
<field name="cache" type="list" default="1" label="COM_MODULES_FIELD_CACHING_LABEL" description="COM_MODULES_FIELD_CACHING_DESC" >
<option value="1">JGLOBAL_USE_GLOBAL</option>
<option value="0">COM_MODULES_FIELD_VALUE_NOCACHING</option>
</field>
<field name="cache_time" type="text" default="900" label="COM_MODULES_FIELD_CACHE_TIME_LABEL" description="COM_MODULES_FIELD_CACHE_TIME_DESC" />
<field name="cachemode" type="hidden" default="static">
<option value="static"></option>
</field>
</fieldset>
Tập tin ngôn ngữ .INI:
– Phần dịch trong các tập tin ngôn ngữ của Joomla! 2.5 phải được đặt trong cặp trong dấu ” ” như sau:
COPYRIGHT_LABEL=”Show copyright”
– Trong phiên bản Joomla! 1.5:
COPYRIGHT_LABEL=Show copyright
Tuy nhiên điều này có thể lại dẫn đến khó khăn khi sử dụng dấu ” ” trong các lời dịch. Đừng quá lo lắng, bạn có thể tạo các dấu ” ” trong lời dịch bằng cách sử dụng “_QQ_”, PHP sẽ tự thay thế chúng bằng ” ”
– Bản dịch trong tập tin ngôn ngữ:
COPYRIGHT_LABEL=”Bản quyền thuộc về trang web “_QQ_”thuthuatweb.net”_QQ_” – 2012″
– Bản dịch được hiển thị:
Bản quyền thuộc về trang web “thuthuatweb.net” – 2012
Các ghi chú trong tập tin ngôn ngữ của Joomla! 2.5 sẽ là dấu chấm phẩy (;) thay vì dấu thăng (#) trong phiên bản cũ:
;COMMENT_LABEL=”Ghi chú trong Joomla 2.5″
#COMMENT_LABEL=Ghi chú trong Joomla 1.5
Trên đây là những cách quản lý module mà mình biết được, bạn nào có cách hay hơn thì nhớ chia sẻ cho mình và mọi người nha.