PDA

Zobacz pełną wersję : Problem z zainstalowaniem własnego szablonu w Joomla 1.6.3



abudon
08-06-2011, 16:43
Witajcie!
Wykonałem własny szablon dla Joomla 1.6, jak sądzę zgodnie ze sztuką. Mam jednak problem z jego instalacją. Joomla zwraca komunikat:

Failed loading XML file
D:\wamp\htdocs\intranet\tmp\install_4def8322a1eb5\ myTemplate\templateDetails.xml
XML: xmlParseEntityRef: no name
JInstaller: :Install: Cannot find Joomla XML setup file

Wszystkie tagi w sekcji <config>, a więc <fieldset> i <field> mają unikalny atrybut name. Nie wiem w czym rzecz! Czy ktoś natknął się na ten problem?

zwiastun
08-06-2011, 17:03
Nie jeden raz. I za każdym razem odpowiadamy, że z fusów wróżą wróżki. Skąd u licha ktoś ma się domyśleć, jakie błędy popełniłeś w pliku?

abudon
08-06-2011, 17:40
Dzięki! Bardzo pomocne. Zamieszczanie całego kodu to chyba niezbyt dobry pomysł, tym bardziej ,że nie jest to kilka linijek. Załączyłem komunikat, który COŚ MÓWI. Co oznacza "XML: xmlParseEntityRef: no name"? Czy komunikat "JInstaller: :Install: Cannot find Joomla XML setup file" jest efektem poprzedniego komunikatu, czy też coś innego oznacza? Jak sądzę "xmlParseEntityRef: no name" oznacza brak atrybutu name w jakimś tagu, ale wszystkie tagi mojego kodu posiadają unikalny atrybut name, na który powołuje się w index.php. W sekcji <config> stosuje pola typu: text, imagelist, list, spacer i checkbox, które użyłem zgodnie z API. Mój plik templateDetails.xml jest strukturalnie poprawny. Problem równie dobrze może tkwić w błędzie Joomla 1.6. Dlatego też zadałem pytanie czy ktoś się spotkał z takim komunikatem i jak go rozwiązał. A propos wróżki - dobra wróżka radzi sobie z fusami. :)

zwiastun
08-06-2011, 20:37
Dobra wróżka. Daruj sobie sarkazm, bo nie dość, że niczego nie wnosi, to psuje atmosferę.
Twoje twierdzenie jest takie: plik instalacyjny jest poprawny, ale instalator zgłasza, że go nie ma. A nie ma go, bo go nie potrafi odczytać z powodu błędu - być może użycia jakiejś nierozpoznanej encji. Owo "no name" może znaczyć w ogólnikowym komunikacie rzeczy różne.
Pomijając to, że forum od zamieszczenia kodu nie spuchnie, masz również i możliwość dołączenia do postu pakietu instalacyjnego szablonu, jeśli chcesz, żeby Ci ktoś pomógł. Jeśli chcesz sobie ponarzekać, nic nie musisz..

abudon
08-06-2011, 21:28
Przepraszam zwiastunie za sarkazm, ale jakoś tak wyszło. Poprawiłem kod w elemencie 'spacer', wyrzucając argument hr, który się znalazł przypadkowo obok argumentu label. Daje to efekt przy instalacji z pakietu - komunikat ogranicz się teraz przy tej instalacji do "JInstaller: :Install: Cannot find Joomla XML setup file", ale przy instalacji z rozpakowanego pakietu jest jak poprzedni. Próba użycia funcji "discover" wyświeta komunikat "JInstaller: :Install: Cannot find Joomla XML setup file". Próba instalacji z opcji "discover" kończy się fiaskiem. Oto kod pliku templateDetail.xml:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install PUBLIC "-//Joomla! 1.6//DTD template 1.0//EN" "http://www.joomla.org/xml/dtd/1.6/template-install.dtd">
<extension version="1.6" type="template" client="site">
<name>MyTemplate</name>
<creationDate>5/06/11</creationDate>
<author>abudon</author>
<authorEmail>abudon@ab7x.pl</authorEmail>
<authorUrl>http://www.ab7x.pl</authorUrl>
<copyright>Copyright (C) 2011 ab7x.pl. All rights reserved.</copyright>
<license>GNU General Public License version 2 or later; see LICENSE.txt</license>
<version>1.6.0</version>
<description>TPL_MYTEMPLATE_XML_DESCRIPTION</description>
<files>
<folder>html</folder>
<folder>css</folder>
<folder>images</folder>
<folder>language</folder>
<folder>js</folder>
<filename>index.php</filename>
<filename>index.html</filename>
<filename>favicon.ico</filename>
<filename>templateDetails.xml</filename>
<filename>template_preview.png</filename>
<filename>template_thumbnail.png</filename>
<filename>component.php</filename>
<filename>error.php</filename>
</files>

<positions>
<position>position-0</position>
<position>position-1</position>
<position>position-2</position>
<position>position-3</position>
<position>position-4</position>
<position>position-5</position>
<position>position-6</position>
<position>position-7</position>
<position>position-8</position>
<position>position-9</position>
<position>position-10</position>
<position>position-11</position>
<position>position-12</position>
<position>position-13</position>
<position>position-14</position>
<position>position-15</position>
<position>banner</position>
<position>upper-1</position>
<position>upper-2</position>
<position>debug</position>
</positions>

<!-- For core templates, we also install/uninstall the language files in the core language folders.
-->
<languages folder="language">
<language tag="en-GB">en-GB/en-GB.tpl_MYTEMPLATE.ini</language>
<language tag="en-GB">en-GB/en-GB.tpl_MYTEMPLATE.sys.ini</language>
<language tag="pl-PL">pl-PL/pl-PL.tpl_MYTEMPLATE.ini</language>
<language tag="pl-PL">pl-PL/pl-PL.tpl_MYTEMPLATE.sys.ini</language>
</languages>
<config>
<fields name="params">
<fieldset name="advanced">
<field type="spacer" name="backgroundoptions" class="text"
label="TPL_MYTEMPLATE_OPTIONS_BACKGROUNDOPTIONS" />
<field type="text" name="backgroundcolor" label="TPL_MYTEMPLATE_OPTIONS_BACKGROUNDCOLOR"
description="TPL_MYTEMPLATE_OPTIONS_BACKGROUNDCOLOR_DESC" default="#e4e4e4" size="7"
filter="string" />
<field type="imagelist" name="backgroundimage" label="TPL_MYTEMPLATE_OPTIONS_BACKGROUNDIMAGE"
description="TPL_MYTEMPLATE_OPTIONS_BACKGROUNDIMAGE_DESC" directory="images" />
<field type="text" name="backgroundimagepositionx"
label="TPL_MYTEMPLATE_OPTIONS_BACKGROUNDIMAGEPOSITION_X"
description="TPL_MYTEMPLATE_OPTIONS_BACKGROUNDIMAGEPOSITION_X_D ESC"
default="0" size="3" filter="integer" />
<field type="text" name="backgroundimagepositiony"
label="TPL_MYTEMPLATE_OPTIONS_BACKGROUNDIMAGEPOSITION_Y"
description="TPL_MYTEMPLATE_OPTIONS_BACKGROUNDIMAGEPOSITION_Y_D ESC"
default="0" size="3" filter="integer" />
<field type="list" name="backgroundimagerepeat"
label="TPL_MYTEMPLATE_OPTIONS_BACKGROUNDIMAGEREPEAT"
description="TPL_MYTEMPLATE_OPTIONS_BACKGROUNDIMAGEREPEAT_DESC"
default="no-repeat" >
<option value="no-repeat">no-repeat</option>
<option value="repeat-x">repeat-x</option>
<option value="repeat-y">repeat-y</option>
<option value="repeat">repeat</option>
</field>
<field type="spacer" name="layoutoptions" class="text"
label="TPL_MYTEMPLATE_OPTIONS_LAYOUTOPTIONS" />
<field type="list" name="pagecolumnswidth" label="TPL_MYTEMPLATE_OPTIONS_PAGECOLUMNWIDTH"
description="TPL_MYTEMPLATE_OPTIONS_PAGECOLUMNWIDTH_DESC" default="4L-4R" >
<option value="7L-3R">7L-3R (270px|560px|110px)</option>
<option value="3L-7R">3L-7R (110px|560px|270px)</option>
<option value="6L-4R">6L-4R (230px|560px|150px)</option>
<option value="5L-5R">5L-5R (190px|560px|190px)</option>
<option value="4L-6R">4L-6R (150px|560px|150px)</option>
<option value="4L-5R">4L-5R (150px|590px|190px)</option>
<option value="5L-4R">5L-4R (190px|590px|150px)</option>
<option value="4L-4R">4L-4R (150px|640px|150px)</option>
</field>
<field type="checkbox" name="toplevel" label="TPL_MYTEMPLATE_OPTIONS_TOPLEVEL"
description="TPL_MYTEMPLATE_OPTIONS_TOPLEVEL_DESC" default="checked" />
<field type="spacer" name="themeoptions" label="TPL_MYTEMPLATE_OPTIONS_THEMEOPTIONS"
class="text" />
<field type="list" name="theme" label="TPL_MYTEMPLATE_OPTIONS_THEME"
description="TPL_MYTEMPLATE_OPTIONS_THEME_DESC" default="t001" >
<option value="t001">white & black</option>
<option value="t002">grayscale</option>
<option value="t003">bluesky</option>
<option value="t004">forest sea</option>
</field>
<field type="spacer" name="checkboxgroup" hr="true" />
<field type="checkbox" name="cornersrounded" label="TPL_MYTEMPLATE_OPTIONS_CORNERSROUNDED"
description ="TPL_MYTEMPLATE_OPTIONS_CORNERSROUNDED_DESC" default="" />

<field type="checkbox" name="boxshadows" label="TPL_MYTEMPLATE_OPTIONS_BOXSHADOWS"
description ="TPL_MYTEMPLATE_OPTIONS_BOXSHADOWS_DESC" default="" />

<field type="checkbox" name="customcss" label="TPL_MYTEMPLATE_OPTIONS_CUSTOMCSS"
description ="TPL_MYTEMPLATE_OPTIONS_CUSTOM_DESC" default="0" />
<field type="spacer" name="otheroptions" hr="true" />

<field type="checkbox" name="logo" label="TPL_MYTEMPLATE_OPTIONS_LOGO"
description ="TPL_MYTEMPLATE_OPTIONS_LOGO_DESC" default="checked" />
</fieldset>
</fields>
</config>
</extension>

Z góry dziękuję za przyjrzenie się temu kodowi. :)

zwiastun
08-06-2011, 22:03
Problemem jest prawdopodobnie ten wiersz:


<option value="t001">white & black</option>

Wpisz zamiast & encję: &amp;
Na przyszłość: Bardzo dobrym testerem poprawności plików xml jest Internet Explorer

abudon
08-06-2011, 23:42
Dziękuję. To była przyczyna. Jednak Joomla 1.6.3 nie wyświetla w tekście pozycji listy (pole list) znaków encji XML - następuje obcięcie tekstu. No cóż, męczę się dalej z próbą wykonania szablonu 1.6.:)