background image

dr inż. Piotr Czapiewski 

Systemy zarządzania treścią 

Laboratorium 5 

 

Strona 1 

 

Joomla! – tworzenie modułów 

Cel ćwiczenia: 

Stworzenie prostego modułu wyświetlającego dane pobrane z zewnętrznej strony WWW. 

Moduł Hello World 

1.

 

Przygotowanie plików modułu 

 

Stwórz w dowolnym miejscu katalog  

mod_helloworld

 

 

W katalogu 

mod_helloworld

 stwórz główny plik modułu:  

mod_helloworld.php

 

 

<?php  

  defined( '_JEXEC' ) or die( 'Dostep zabroniony!' ); 

  echo JText::_( 'Hello World!' ); 

?> 

 

 

W katalogu mod_helloworld stwórz plik deskryptora modułu: mod_helloworld.xml 

 

<?xml version="1.0" encoding="Windows-1250"?> 

<install type="module" version="1.5.0"> 

  <name>Hello World</name

  <author>Jan Kowalski</author> 

  <creationDate>Listopad 2008</creationDate

  <copyright>(C) 2008 Jan Kowalski</copyright

  <license>GNU/GPL</license

  <authorEmail>jasio@jasiokowalski.pl</authorEmail

  <authorUrl>www.jasiokowalski.pl</authorUrl

  <version>1.0.0</version> 

  <description>Moduł Hello World</description

  <files

  <filename module="mod_helloworld">mod_helloworld.php</filename

  </files

</install>  

2.

 

Instalacja modułu 

 

Spakuj katalog mod_helloworld do archiwum mod_helloworld.zip 

 

Zainstaluj moduł przez panel administracyjny Joomla! 

 

Dodaj nowy moduł na pozycji top (Rozszerzenia->Moduły->Nowy->Hello World, Pozycja=top

Moduł bash.org.pl 

1.

 

Przygotowanie plików modułu 

 

Tak jak w poprzednim ćwiczeniu - stwórz katalog  

mod_bash

, w nim pliki

 

mod_bash.php

 oraz  

mod_bash.xml

 

 

W pliku mod_bash.php umieść kod pobierający tekst z serwera bash.org.pl: 

 

background image

dr inż. Piotr Czapiewski 

Systemy zarządzania treścią 

Laboratorium 5 

 

Strona 2 

 

<?php 

  defined('_JEXEC') or die( 'Dostep zabroniony!' ); 

   

  $ch = curl_init('http://bash.org.pl/latest/'); 

  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

  $page = curl_exec($ch); 

  curl_close($ch); 

 

  $pattern =  

     '#<div class="quote post-content post-body">(.*?)</div>.*#s'; 

  preg_match($pattern, $page, $out); 

  $msg = trim($out[1]); 

  echo $msg;   

?>  

 

 

Uzupełnij odpowiednio plik deskryptora modułu, mod_bash.xml 

2.

 

Instalacja modułu 

 

Spakuj moduł do archiwum zip i zainstaluj przez panel administracyjny Joomla! 

 

Dodaj nowy moduł na pozycji top, wyłącz wyświetlanie modułu mod_helloworld 

Moduł Dilbert 

1.

 

Przygotowanie modułu 

Analogicznie jak w poprzednim punkcie, przygotuj moduł mod_dilbert. W stosunku do modułu 

mod_bash zmieni się część kodu PHP wycinająca odpowiedni fragment kodu HTML pobranej 

strony: 

 

<?php 

  defined('_JEXEC') or die( 'Dostep zabroniony!' ); 

   

  $ch = curl_init('http://dilbert.com/strips/'); 

  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

  $page = curl_exec($ch); 

  curl_close($ch); 

 

  $pattern = '#<div class="STR_Image">.*?<img 

src="(.*?)".*#s'; 

  preg_match($pattern, $page, $out); 

  $img = '<img src="http://dilbert.com/' . $out[1] . '" />'; 

  echo $img;   

?> 

2.

 

Instalacja modułu 

Zainstaluj moduł i umieść na pozycji user1. Wyłącz inne moduły wyświetlane na pozycjach user1 i 

user2.