Februari

16

Joomla 1.5 is zeker een betere CMS als je het vergelijkt met Joomla 1.0. Een van de weinige klachten die ik heb gehoord en persoonlijk ervaren met Joomla 1.5 is de integratie van Mootools (en caption.js) standaard als je gebruik maakt van Joomla template methode om header-informatie in uw sjabloon. Wat is het probleem, zou men kunnen vragen? Nou, het probleem is dat de Mootools bestand dat geleverd wordt met Joomla 1.5 is maar liefst 74k groot zijn. Van ontwikkelaar is van mening dat ik misschien nooit gebruik hoeven te maken mootools in mijn applicatie. En vanaf eindgebruiker oogpunt is dit echt een rem op de eerste pagina's worden geladen keer vooral voor gebruikers die met een tragere verbindingen, en je krijgt nooit een tweede kans om een eerste impression.Mootools is zeker een zeer nuttige JavaScript-kader. (En aangezien de oprichter perfectionist kan zelfs brand zijn ontwikkelaar, dat ook blijkt dat bepaalde standaard.) Maar bij het laden zonder gebruik te maken van het echt irriteert sommige people.So waarom de hel op aarde zou Joomla 1.5 omvat Mootools? De reden hiervoor is omdat Joomla 1.5 Admin sectie maakt gebruik van Mootools. Het is de C (controleur) in de MVC (Model-View-Controller) die deze nodig heeft. Als u de laatste versie en gezien de AJAX-effecten van de admin gebied, kunt u waarschijnlijk weet waarover ik praat about.Now de vraag is hoe het verwijderen van de Mootools en andere JavaScript-bestanden uit de kop toen de eindgebruikers zien, en bewaar deze bestaat wanneer een beheerder ziet? Geen nood, hier is de oplossing, dan is de code die ik gebruik voor het verwijderen van de mootools.js en caption.js

  <? php 
  $ user = & JFactory:: getUser (); 
  if ($ user-> get ( 'gast') == 1) ( 
  headerstuff $ = $ this-> getHeadData (); 
  $ headerstuff [ 'scripts'] = array (); 
  $ this-> setHeadData ($ headerstuff);) 
 ?> 
  <jdoc:include type="head" /> 

In het geval dat u wilt behouden de caption.js (sommigen Joomla! Onderdelen, modules of plugins caption.js gebruikt, bijvoorbeeld: Acajoom), kunt u ervoor kiezen om alleen mootools. Hieronder vindt u de PHP-code gebruik ik om dat te doen:


  <? php 
  / / Verwijder automatisch gegenereerd mootool uit header 
  headerstuff $ = $ this-> getHeadData (); 
  reset ($ headerstuff [ 'scripts']); 
  moo $ key = ($ headerstuff [ 'scripts']); 
  unset ($ headerstuff [ 'scripts'] [$ moo]); 
  $ this-> setHeadData ($ headerstuff); 
 ?> 
  <jdoc:include type="head"> 

Ik hoop dat deze tips helpen!

Digg Facebook Google Newsvine Reddit Slashdot Technorati Windows Live Yahoo del.icio.us



Soortgelijke Posts

Reacties

Naam (verplicht)

E-mail (verplicht)

Website

Spreek je gedachten

37 Reacties tot nu toe

  1. Simeon op 13 maart, 2008 3:45 pm

    Kunt u vertellen waar deze code moet worden gelegd?

  2. admin op 14 maart 2008 7:06

    Hoi, Simeon

    Opgemerkt dient te worden geplaatst in de header (<head> </ head>) van uw sjabloon index-bestand (index.php).

    Bijvoorbeeld, als u de sjabloon BEEZ die meegeleverd wordt met Joomla, net navigeren van root naar Joomla templates / BEEZ, onder de BEEZ map. vinden het index.php bestand, open het op, plaatst de code in de header.

  3. John werd op 17 april 2008 8:46

    Wow! Bedankt.

    Beveel ik deze code als u die in strijd is met lightbox.js en mootools.js.

    Ik verving de met de code die u hebt geleverd en het werkte perfect!

    Lightbox werkt nu zoals het hoort.

    Nogmaals bedankt!

  4. admin op 28 april, 2008 9:25

    Geen probleem, John! erg blij om te weten dat uw probleem is opgelost!

  5. Tom op 7 mei 2008 12:04 am

    Hoi,
    Ik krijg altijd de volgende foutmelding bij het plaatsen van uw code in de kop van mijn index.php:

    Parseerfout: syntax error, onverwachte ";", verwacht T_PAAMAYIM_NEKUDOTAYIM in / WWWRoot / ... / htdocs / templates / rhuk_milkyway / index.php on line 21

    Wat heb ik moeten veranderen?

  6. admin op 7 mei 2008 4:24

    Hallo, Tom

    Heeft u kiest voor de eerste chunck van code uit het bovenstaande? Sorry, ik vond een typfout, kun je proberen kopie plak de code opnieuw in? Laat het me weten als het probleem zich blijft voordoen.

  7. Tom van 8 mei 2008 7:33

    Hoi,

    eigenlijk had ik de problemen met de * tweede * stuk code (de ene te verwijderen mootools alleen uit de header). Maar ik heb de eerste code ingevoegd nu en dat lijkt te werken netjes.

    Ik hoop dat ik het niet nodig caption.js in de toekomst ...

    Bedankt!

  8. admin op 9 mei 2008 3:53

    Hallo, Tom

    Blij dat te weten. :)

  9. Steffi op 7 juli 2008 5:03

    Thx voor de code! Maar zie ik het juist dat deze uitschakelen met uw code werkt alleen voor niet-gasten? Dus het is geen oplossing voor het gebruik van Lightbox, zoals voor de redacteuren of uitgevers willen dat de beelden in een lightbox, en ook wilt bewerken hun inzendingen.

  10. admin op 7 juli 2008 10:49

    Hoi, Steffi. wat een goed punt, misschien kunt u proberen dit pas de derde regel: $ user-> get ( 'gasten') naar iets meer geschikt is voor uw behoeften.

  11. Steffi on July 12, 2008 1:19

    Nou, ik kon veranderen en te zorgen dat het werkt ook voor geregistreerde gebruikers. maar als ik het aan redacteuren of uitgevers, zien ze de lichtboxen in de beelden, maar ze zijn niet meer in staat om te bewerken hun inzendingen. er is dus geen oplossing voor dit probleem zich voor als auteurs willen dat de lichtbak EN wilt bewerken hun standpunten bekend te maken: (

  12. admin on July 15, 2008 4:32

    sorry, Steffi

    Ik ben een beetje verward, als je de javascript-bestanden moeten de hele tijd, waarom wil je dan om hem te verwijderen in de eerste plaats?

    hoe wil je je applcation om te werken?

  13. unikyu on July 17, 2008 6:55

    Hoi,

    Big Dank u voor dit artikel. Ik ben nieuw voor CMS en Joomla. Gestart bouw van een site in april en hebben zich uit mijn haar pogingen om de zaken te bespoedigen sinds die tijd. Tot slot dacht mootools had iets te maken heeft en voila ... nu hebben ontdekt je artikel.

    Ik vraag me af of kun je de exacte syntaxis voor het verwijderen van mootools voor zowel gasten en geregistreerde gebruikers alike ... U suggereerde dat de code zodanig worden aangepast dat die geschikt zijn voor een gebruiker nodig heeft, maar ik ben zo een nieuweling, ik weet niet hoe te omvatten zowel Gasten en geregistreerde gebruikers en uitsluiten admin.

    Ik hoop dat ik heb mijn verzoek duidelijk. Nogmaals bedankt.

  14. admin op 18 juli, 2008 5:09

    Hoi, unikyu

    Ik denk dat het volgende is wat u nodig heeft:

    <? php
    $ user = & JFactory:: getUser ();
    if ($ user-> get ( 'gast') == 1 | | $ user-> get ( 'gebruikerstype') == 'Registered') (
    headerstuff $ = $ this-> getHeadData ();
    $ headerstuff [ 'scripts'] = array ();
    $ this-> setHeadData ($ headerstuff);)
    ?>

    hoop dat het helpt! :)

  15. unikyu on July 19, 2008 4:04

    Nogmaals, ik dank u daarvoor. Ik heb geprobeerd beide codes en de prestaties joomla sorteersysteem heeft me verteld dat mootools was verwijderd en dat de site moet worden uitgevoerd sneller. Het is echter moeilijk voor mij om te weten of de prestaties site is in feite te verbeteren (zoals het zou moeten zonder een dergelijke massale dossier), omdat de pagina's open blijven inconsistent (soms snel en op andere momenten zo traag is bij het punt dat zij een time out ).

    Ik ben gekomen om uit te vinden, op de dag heb ik geprobeerd deze 'verwijderen mootools' code, dat de hosting bedrijf is er zich van bewust dat er enig probleem met hun server database afhandeling van verzoeken. Ze zeggen dat ze zullen upgrade in 2 weken.

    Zal wachten tot dan toe te geven dat u voor goede feedback over de gevolgen van deze code ... Juist nu, site performance blijft worden grrrr! * smile *

    Maar bedankt voor het verstrekken van deze optie.

  16. teino op 8 augustus 2008 3:33

    1. getHeadData ();
    4. reset ($ headerstuff [ 'scripts']);
    5. moo $ key = ($ headerstuff [ 'scripts']);
    6. unset ($ headerstuff [ 'scripts'] [$ moo]);
    7. $ this-> setHeadData ($ headerstuff);
    8. ?>
    9.

    Ik heb een foutmelding

    Klasse is niet gedefinieerd
    caption.js (lijn 22)
    var JCaption = new Klasse ((

  17. Agent007 on August 23, 2008 6:19 pm

    Hoi

    Bedankt voor het zeer nuttige informatie. Ik heb het geprobeerd met de tweede code blok (het verwijderen mootools slechts een deel) met een "if block" voor de gasten en geregistreerde gebruikers op basis van wat u aangeraden om uikyu. Hier is de code:

    get ( 'gast') == 1) | | $ user-> get ( 'gebruikerstype') == 'Registered') (
    headerstuff $ = $ this-> getHeadData ();
    reset ($ headerstuff [ 'scripts']);
    moo $ key = ($ headerstuff [ 'scripts']);
    unset ($ headerstuff [ 'scripts'] [$ moo]);
    $ this-> setHeadData ($ headerstuff);
    ) / / End if
    ?>

    Wanneer echter, zoals deze werkt goed voor de gasten, niet voor geregistreerde gebruikers. De situatie dezelfde gebleven, zelfs wanneer het "blok als" geschrapt.

    Overigens, je eerste code blok (voor de verwijdering van caption.js en mootools werkte prima voor gasten en geregistreerde gebruikers.

    Enig idee? Ik wil heel graag verwijderen alleen mootools uitsluitend voor gasten en gebruikers uit de 'Registered' groep.

    Groeten

  18. Agent007 on August 23, 2008 6:24 pm

    Sorry, ik heb net al gemerkt dat bij het opruimen van mijn opmerkingen van de code, ik per ongeluk verwijderd deel van de constructie werd verwijderd zijn. Hier is de complete blok nogmaals:

    get ( 'gast') == 1) | | $ user-> get ( 'gebruikerstype') == 'Registered') (
    headerstuff $ = $ this-> getHeadData ();
    reset ($ headerstuff [ 'scripts']);
    moo $ key = ($ headerstuff [ 'scripts']);
    unset ($ headerstuff [ 'scripts'] [$ moo]);
    $ this-> setHeadData ($ headerstuff);
    ) / / End if
    ?>

  19. Agent007 on August 23, 2008 6:26 pm

    Hmmmmm het was geen sprake van een fout van mijn kant na alle reden voor sommige oneven aantal van de code wordt afgesneden.

  20. admin op 24 augustus 2008 2:47

    Hoi, Agent007

    Is het script werkt prima voor u nu?

    kunt u proberen gebruik te maken van de 'vlakte' wanneer kopieer en plak mijn code naar uw tekstverwerker, of typ het zonder kopiëren en plakken.

  21. admin op 24 augustus 2008 2:48

    Hoi, teino

    waar heb je de foutmelding?

  22. Andre op 24 augustus 2008 4:42

    Wat Teino de boodschap:
    "Ik heb een foutmelding
    Klasse is niet gedefinieerd
    caption.js (lijn 22)
    var JCaption = new Klasse ((
    "
    Ik snap dat ook, in Firefox's YUI. De fout treedt op in de media / system / js / caption.js, met gebruikmaking van het tweede stuk code, die een einde maakte aan mootools alleen.

    Verbetert de laad-tijd al!

  23. admin op 24 augustus 2008 8:00

    Voor nu, probeer dan voeg je deze lijn na het tweede stuk code: <script type = "text / javascript" src = "<? Php echo $ this-> basisurl?> / Media / system / js / caption.js"> < / script>

    Ik vind een betere oplossing als ik vrij ben. :)

  24. Andre on August 24, 2008 3:14 pm

    Nah. Dat geeft me 2 YUI fouten, klasse niet gedefinieerd.
    Ik heb ingevoegd het eerste stuk code in de header, geen fouten en daar lijkt het niet te beïnvloeden niets op de site, zodat ik aan vasthouden.

    Bedankt voor de moeite die mate!

  25. Francesco op 1 september 2008 11:17

    Niemand van jullie oplossing help me .. veroorzaken als ik probeer in te voegen uw code in IE Ik zie halve bladzijde zwart .. en het andere deel met geen enkel standpunt ....

    Ik begrijp het niet: (

    Help me: (

  26. FMJ op 7 september, 2008 3:33

    Het lijkt te werken, zelfs voor geregistreerde gebruikers toevoegen van hetzelfde stuk code na

    get ( 'gast') == 1 | | $ user-> get ( 'gebruikerstype') == 'Registered') (
    headerstuff $ = $ this-> getHeadData ();
    reset ($ headerstuff [ 'scripts']);
    moo $ key = ($ headerstuff [ 'scripts']);
    unset ($ headerstuff [ 'scripts'] [$ moo]);
    $ this-> setHeadData ($ headerstuff);
    )
    ?>

  27. FMJ op 8 september 2008 2:05

    na

  28. FMJ op 8 september 2008 2:05

    na

  29. FMJ op 8 september 2008 2:06

    na jdoc: include type = "kop"

  30. Brent Kerr op 8 september 2008 4:09

    Hey, bedankt voor het script.

    Ik dacht dat je zou moeten weten, ik zie "=" op lijn 2 van het eerste stuk code in plaats van '= & ", hetgeen uiteraard geeft een foutmelding wanneer rechtstreeks gekopieerd. Misschien is uw blog software is' opschonen '?

    Sante,
    Brent.

  31. Brent Kerr op 8 september 2008 4:11

    Aaahh, mijn post gaf een voorbeeld van het probleem - hoe ironisch. Wat ik bedoelde te zeggen was:
    Ik zie "= & amp;" (de HTML-code voor het teken '&') op lijn 2 van het eerste stuk code in plaats van "=&".

  32. admin op 8 september 2008 6:39

    Hoi, Brent Kerr

    dank voor de opmerking maar! :)

    Ik denk dat het komt omdat een recente update wordpress, HTML maakt het nu anders. Denk dat ik nodig heb om te lezen via mijn oude berichten op te lossen van dit soort problemen.

  33. seralex op 24 september, 2008 2:37 pm

    bedankt! From Russia With Love!

  34. Rigo op 7 oktober 2008 11:41

    Heeft uw code, nogal veel in voor alle hoofd-code. Ik gebruik de plugin Toheader om javascript-code in de header van bepaalde artikelen en voor enkele reden is het niet verschijnen na het invoeren van uw code. Dus ik denk dat de vraag: heeft u de code stopt de header de vorm van een code wordt gegenereerd met uitzondering van hoofd-code in de template-bestanden? Ik hoop dat het zinvol
    THankis

  35. admin op 9 oktober 2008 10:28

    Hoi, Rigo

    Ik ben van plan om een plugin om de header script flexibilisering.

  36. Jay op 15 oktober 2008 1:52

    Hartelijk dank voor dit - net nog dreunend hoofd tegen een muur, terwijl het gebruik van deze vreselijke CMS:)

  37. Jalil de dag 24 November, 2008 7:34 pm

    hoi,

    zeer mooi werk.

    eindelijk kunnen we ademen makkelijker zonder zich zorgen te maken over
    koeien over roaming op onze sites.

    Ik wens op te merken dat de opmerking die u gemaakt over
    "Mootools het bestand dat wordt geleverd met Joomla 1.5 is maar liefst 74k groot zijn. "Is niet helemaal accuraat is.

    Het is niet traag vanwege zijn omvang en eigenlijk is het relatief gezien klein (i hebben gebruikt javascripts 3 keer de grootte zonder problemen met de prestaties), maar het is de manier waarop de moos werk dat degradeert de prestaties dus. de koeien is gewoon te vet in processen.

    u weet wat ik bedoel als je het vergelijkt de achterkant van 1.0 en 1.5. maar het ziet er natuurlijk ooit zo lief op de front-end, ik blijf bij mijn mening 1.0 is beter.

    het woord hebben gevoerd in mijn gedachten. :)

    ta.

Sponsors




Links