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.

thiet-ke-web-tre-content

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:

<extension type="module" version="2.5.0" client="site" method="upgrade">

</extension>

  • Thay:

<params>

<param name="Setting" type="text" default="something" label="Set" description="Set" />

</params>

  • 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_"thietkewebtre.com"_QQ_" - 2012"

  • Bản dịch được hiển thị:

Bản quyền thuộc về trang web "thietkewebtre.com" - 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