Een Joomla 1.5 component zonder legacy mode

Hier kun je vragen stellen over de nieuwste 1.5 ontwikkelingen en ondervonden problemen melden.

Moderator: pe7er

Forum rules
Forum Regels
User avatar
vancanneyt
Joomla! Ace
Joomla! Ace
Posts: 1098
Joined: Fri Aug 19, 2005 9:30 pm
Location: Buiten de wereld
Contact:

Een Joomla 1.5 component zonder legacy mode

Postby vancanneyt » Tue Feb 06, 2007 9:48 pm

Legacy modes zijn mss goed om de boel terug te doen werken maar bij de versie erna mag je het weer vergeten. Nu Beta2 aan ons voeten ligt ben ik toch aan het experimenteren geslaan om een bestaand component (eentje van mn eigen extensies) te gaan omzetten naar een 1.5 extensie. Bij het ontwikkelen had ik al wat code klaargestoken voor Joomla 1.5 maar ik zag dat er nog het een en ander was aangepast wat ik dan weer diende op te zoeken, vele errors en connection fouten later is het me dan ook eindelijk gelukt: het werkt, en dat op de nieuwe manier...

urls zijn nu:
index.php?Itemid=1&bekijk=1

Oude componenten mag je dan ook vergeten dat ze werken zonder de legacy mode, toch zullen ze ook eens zonder dat moeten stellen. Info over aanpassen van extensies naar 1.5 vindt je op developer.joomla.org

Wie zelf extensies maakt, schrijf 1.5 code er in een commentaarregel er bij, bespaart je wat werk nadien, of maak een kopie van de map components, de ene map voor 1.0 ontwikkeling en de andere voor 1.5
Member of the Dutch (nl-NL) translation team - http://joomla.taalbestand.nl - http://joomlacode.org/gf/project/nederlands/

User avatar
An-ie
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 173
Joined: Tue Sep 13, 2005 9:36 pm
Contact:

Re: Een Joomla 1.5 component zonder legacy mode

Postby An-ie » Tue Feb 06, 2007 10:26 pm

Hoi Sander,

Bij het bouwen en testen van mijn eerste 1.5 template heb ik bewust de legacy mode uitgelaten omdat ik al ergens had gelezen dat we het in de toekomst toch zonder de legacy mode moeten stellen. Kan beter voorbereid zijn op de toekomst toch?  ;)

Heb je je zelfaangepaste component ergens ter download staan? Ik vind het wel leuk om het eens uit te proberen  :)
Anja Hage, Web-effect
http://www.web-effect.nl
Joomla! websites & trainingen

User avatar
vancanneyt
Joomla! Ace
Joomla! Ace
Posts: 1098
Joined: Fri Aug 19, 2005 9:30 pm
Location: Buiten de wereld
Contact:

Re: Een Joomla 1.5 component zonder legacy mode

Postby vancanneyt » Tue Feb 06, 2007 10:39 pm

inderdaad, templates identiek, als 1.6 er dan zal zijn sta je dan ook mooi en zal je dan toch nog moeten de aanpassingen doen, uitstel van executie dus ;)

templates zijn nog eenvoudige koek in vergelijking met componenten, al kan je deze zaken wel in acht nemen die ik tegenkwam die ik nuttig vond te vermelden:

Code: Select all

<?php
// Scripts beginnen met nieuwe define:
defined( '_JEXEC' ) or die( 'Restricted access' );

// mainframe laden
global $mainframe;

// Variabele die verstuurd is via de url ophalen, in dit geval limitstart
$limitstart = intval( JRequest::getVar( 'limitstart', 0 ) );

// Paginanavigatie in Joomla 1.5, eerst oproepen van de paginatie
jimport('joomla.html.pagination');
// nieuwe naam voor de paginatie te maken
$pageNav = new JPagination($total, $limitstart, $limit);
// nieuwe  naam voor weergeven van de navigatie
echo $pageNav->getPagesLinks( "$link" );

// als je verbinding wil maken met database zal je dit moeten gebruiken ipv de global $database:
$database = & JFactory::getDBO();

// parameter van een module ophalen
$parameter = $params->get('parameter', 0);

// itemid is belangrijk geworden, even oproepen, gebeurt dus niet meer via de resuest
global $Itemid;

// voor in orde te zijn met de nieuwe url methodes de zoekformulieren die je eventueel gebruikt aanpassen, veld option mag weg en dit mag in de plaats
echo '<input type="hidden" name="Itemid" value="'.$Itemid.'" />';

// $my is veranderd naar $user
global $user;

?>


categorielinks: index.php?Itemid=181&view=category&id=304

Met bovenstaande kan je al een héél eind vooruit, het zijn zowat de meest voorkomende zaken. Het is alvast eens een goede oefening om wegwijs te vinden doorheen het nieuwe framework en joomla nog meer te ontdekken.
Member of the Dutch (nl-NL) translation team - http://joomla.taalbestand.nl - http://joomlacode.org/gf/project/nederlands/

User avatar
An-ie
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 173
Joined: Tue Sep 13, 2005 9:36 pm
Contact:

Re: Een Joomla 1.5 component zonder legacy mode

Postby An-ie » Tue Feb 06, 2007 11:13 pm

vancanneyt wrote:templates zijn nog eenvoudige koek in vergelijking met componenten


Daarom ben ik ook begonnen met de templates, ik ben nog niet zo lang bezig met Joomla  ;)
Maar wie weet ga ik het ook wel eens proberen om componenten of iets dergelijks aan te passen met jouw code  :D
Anja Hage, Web-effect
http://www.web-effect.nl
Joomla! websites & trainingen

User avatar
vancanneyt
Joomla! Ace
Joomla! Ace
Posts: 1098
Joined: Fri Aug 19, 2005 9:30 pm
Location: Buiten de wereld
Contact:

Re: Een Joomla 1.5 component zonder legacy mode

Postby vancanneyt » Wed Feb 07, 2007 11:22 am

kheb gisteren nog mn template getest en werkte meteen, stond al tijdje klaar met 1.5 zaken in, werkt veel beter de xhtml moduleoutput ipv de klassieke tabellen vanuit de 1.0.x

2 van mn eigen extensies werken nu volledig onder de 1.5 termen, nog 4 te gaan denk ik.

vanavond tracht ik een 1.0.x module naar 1.5 te transfereren, eens zien of het ook zo goed zal werken ;)
Member of the Dutch (nl-NL) translation team - http://joomla.taalbestand.nl - http://joomlacode.org/gf/project/nederlands/

User avatar
sc00zy
Joomla! Exemplar
Joomla! Exemplar
Posts: 9529
Joined: Thu Aug 18, 2005 9:07 am
Location: Assen, Netherlands
Contact:

Re: Een Joomla 1.5 component zonder legacy mode

Postby sc00zy » Wed Feb 07, 2007 12:44 pm

[offtopic]
Is het al wel verstandig om extensies om te gaan zetten? Veranderingen in de core kunnen er voor zorgen dat al je werk voor niets is geweest en je alles weer moet aanpassen. Voor zover ik weet is de 1.5 functionaliteit nog niet bevroren.
[/offtopic]
Arjan Menger
http://www.welldotcom.nl - Professionele Joomla! Design, Ontwikkeling en Hosting
http://www.joomlaideal.nl - iDEAL betaalmethode voor Joomla! en Virtuemart

User avatar
vancanneyt
Joomla! Ace
Joomla! Ace
Posts: 1098
Joined: Fri Aug 19, 2005 9:30 pm
Location: Buiten de wereld
Contact:

Re: Een Joomla 1.5 component zonder legacy mode

Postby vancanneyt » Wed Feb 07, 2007 2:43 pm

klopt wat je zegt Sc00zy, de Beta2 gaat weldra uitkomen en is dan al pak meer geëvolueerd dan Beta1, het is tijdens deze periode (tot de table) dat de omzetting al kan beginnen en deze geregeld te controleren met een 1.5 build. ik verwacht niet dat er enorm grote aanpassingen zullen gebeuren, de grootste zijn al achter de rug en dat is het framework dat nu verbeterd wordt, als je geregeld de SVN checkt dan kan je het goed opvolgen, net zoals de Itemid verandering.
Ik wil dit dan ook enkel maar aanraden voor mensen die eigen extensies hebben en al willen experimenteren met 1.5 en hun extensie al compatibel kunnen maken. Upgraden wordt zo al geen makkie en als je op dat moment nog extensies moet omzetten dan is het helemaal compleet, ruim op voorhan,d geeft je de tijd en het inzicht in het nieuwe Joomla! gedeelte.
Er circuleren al wat 1.5 extensies rond, ik gebruik er zelf eentje van op mn 1.5 testsite ;)
Member of the Dutch (nl-NL) translation team - http://joomla.taalbestand.nl - http://joomlacode.org/gf/project/nederlands/

User avatar
vancanneyt
Joomla! Ace
Joomla! Ace
Posts: 1098
Joined: Fri Aug 19, 2005 9:30 pm
Location: Buiten de wereld
Contact:

Re: Een Joomla 1.5 component zonder legacy mode

Postby vancanneyt » Tue Feb 13, 2007 9:06 am

Nog even wat info geven:

global $my;
veranderen naar:
$my = & JFactory::getUser();

de $my wordt nu meestal vervangen door $user en zal er dan zo uitzien:
$user = & JFactory::getUser();

Voor de plugins:
oude methode
$_MAMBOTS->registerFunction( 'onAfterDisplayContent', 'artikelenbot' );
1.5 methode
$mainframe->registerEvent( 'onAfterDisplayContent', 'artikelenbot' );
Last edited by vancanneyt on Tue Feb 13, 2007 3:38 pm, edited 1 time in total.
Member of the Dutch (nl-NL) translation team - http://joomla.taalbestand.nl - http://joomlacode.org/gf/project/nederlands/

User avatar
vancanneyt
Joomla! Ace
Joomla! Ace
Posts: 1098
Joined: Fri Aug 19, 2005 9:30 pm
Location: Buiten de wereld
Contact:

Re: Een Joomla 1.5 component zonder legacy mode

Postby vancanneyt » Thu Feb 15, 2007 8:39 pm

En ik geef er nog eentje bij:

dit geld voor versies LATER dan vandaag van 1.5 beta, ook nieuwere versies dan JN 2!
sefreltoabs() wordt nu vervangen door JRoute::_()

oud gebruik:

Code: Select all

<?php
sefreltoabs("index.php?task=view");
?>


Nieuw gebruik:

Code: Select all

<?php
JRoute::_("index.php?task=view");
?>
Member of the Dutch (nl-NL) translation team - http://joomla.taalbestand.nl - http://joomlacode.org/gf/project/nederlands/

User avatar
vancanneyt
Joomla! Ace
Joomla! Ace
Posts: 1098
Joined: Fri Aug 19, 2005 9:30 pm
Location: Buiten de wereld
Contact:

Re: Een Joomla 1.5 component zonder legacy mode

Postby vancanneyt » Mon Apr 02, 2007 7:33 am

even verder gaan op mijn laatste post met wat nieuwe info (mja nieuw:D)

Code: Select all

<?php
JRoute::_("index.php?wattedoen=ditdoen");
?>


geparsed zal dit er zo uit zien: index.php?Itemid=99&option=ditismijncomponent&wattedoen=ditdoen
het itemid en de option worden dus automatisch toegevoegd.

met SEF aan, zonder htaccess:
index.php?/dit-is-de-titel-van-mijn-menuitem?wattedoen=ditdoen
met SEF aan, met htaccess:
dit-is-de-titel-van-mijn-menuitem?wattedoen=ditdoen

de standaard joomla componenten zien er gelijkaardig uit maar zijn meestal nog verder geoptimaliseerd met SEF, test het zelf uit met een 1.5 installatie.
Member of the Dutch (nl-NL) translation team - http://joomla.taalbestand.nl - http://joomlacode.org/gf/project/nederlands/

User avatar
vancanneyt
Joomla! Ace
Joomla! Ace
Posts: 1098
Joined: Fri Aug 19, 2005 9:30 pm
Location: Buiten de wereld
Contact:

Re: Een Joomla 1.5 component zonder legacy mode

Postby vancanneyt » Fri Jun 08, 2007 10:25 am

Template aanpassing in xml inzake moduleposities:
voorbeeld XML file:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<install version="1.5" type="template">
   <name>NAAM</name>
   <version>1.0.0</version>
   <creationDate>Vrijdag 18 juni</creationDate>
   <author>Vancanneyt Sander</author>
   <authorEmail>[email protected]</authorEmail>
   <authorUrl>http://www.boem.be</authorUrl>
   <copyright></copyright>
   <license>GNU/GPL</license>
   <description>OMSCHRIJVING</description>
   <files>
      <filename>bestand.extensie</filename>
   </files>
   <positions>
      <position>links</position>
      <position>rechts</position>
      <position>top</position>
      <position>breadcrumb</position>
      <position>user1</position>
      <position>user2</position>
      <position>user3</position>
      <position>user4</position>
      <position>debug</position>
      <position>syndicate</position>
   </positions>
   <params>
      <param name="mijnparameter" type="list" default="1"
         label="dit is mijn parameter" description="en de omschrijving ervan">
         <option value="1">kwak</option>
         <option value="2">kwek</option>
         <option value="3">kwik</option>
         <option value="4">klik</option>
         <option value="5">krik</option>
      </param>
   </params>
</install>
Member of the Dutch (nl-NL) translation team - http://joomla.taalbestand.nl - http://joomlacode.org/gf/project/nederlands/


Return to “Joomla! 1.5”

Who is online

Users browsing this forum: No registered users and 1 guest