J3.x

Difference between revisions of "Developing an MVC Component/Adding language management/nl"

From Joomla! Documentation

< J3.x:Developing an MVC Component
(Created page with "== Inpakken van de component ==")
(Created page with "De inhoud van uw code map")
Line 136: Line 136:
 
== Inpakken van de component ==
 
== Inpakken van de component ==
  
Content of your code directory
+
De inhoud van uw code map
 
* ''[[#helloworld.xml|helloworld.xml]]''
 
* ''[[#helloworld.xml|helloworld.xml]]''
 
* ''[[S:MyLanguage/J3.2:Developing_an_MVC_Component/Adding_a_view_to_the_site_part#site/helloworld.php|site/helloworld.php]]''
 
* ''[[S:MyLanguage/J3.2:Developing_an_MVC_Component/Adding_a_view_to_the_site_part#site/helloworld.php|site/helloworld.php]]''

Revision as of 18:36, 30 March 2018

Other languages:
English • ‎Nederlands • ‎español • ‎français • ‎العربية • ‎中文(台灣)‎
Copyedit.png
This Page Needs Your Help

This page is tagged because it NEEDS REVIEW. You can help the Joomla! Documentation Wiki by contributing to it.
More pages that need help similar to this one are here. NOTE-If you feel the need is satistified, please remove this notice.


Joomla! 
3.x
Handleiding
Het ontwikkelen van een MVC component


Dit is een reeks van artikelen met handleidingen over het ontwikkelen van een Model-View-Controller Component voor Joomla! versieJoomla 3.x.

Begin met de Introductie en navigeer door de artikelen van de reeks door middel van de navigatieknop onderaan of het vak rechts (Artikelen in deze reeks).



Inleiding

Deze handleiding is een onderdeel van de Het ontwikkelen van een MVC Component voor Joomla! 3.2 uitleg. Het is aan te raden om de vorige delen van deze handleiding te lezen voordat u dit onderdeel leest.

U kunt een video bekijken die gerelateerd is aan deze stap in de handleiding op Stap 8, Toevoegen van taalbeheer.

Joomla! 3.2 beheert talen voor componenten in vier verschillende situaties:

  • weergave van een component op het publieke deel van de site
  • beheren van een component in het beheergedeelte
  • beheren van menu's in het beheergedeelte
  • installatie van een component

Joomla! 3.2 gebruikt twee verschillende locaties voor de taalmappen:

  • een in administrator/language of language
  • een in the componentmap (administrator/components/*component*/language of components/*component*/language)

Het is afhankelijk van hoe de component geïnstalleerd wordt.

Toevoegen van vertalingen in het publieke deel van de site

Maak met de bestandsmanager en editor van uw voorkeur een bestand site/language/en-GB/en-GB.com_helloworld.ini. Dit bestand zal de vertalingen bevatten voor het publieke gedeelte. Op dit moment is het bestand leeg.

site/language/en-GB/en-GB.com_helloworld.ini

Op dit moment bevat dit bestand geen taalstrings.

Toevoegen van vertalingen bij het beheren van de component

Maak met uw bestandsmanager en editor van uw voorkeur een bestand admin/language/en-GB/en-GB.com_helloworld.ini. Dit bestand zal vertalingen voor het beheergedeelte bevatten.

admin/language/en-GB/en-GB.com_helloworld.ini

; Joomla! Project
; Copyright (C) 2005 - 2018 Open Source Matters. All rights reserved.
; License GNU General Public License version 2 or later; see LICENSE.txt, see LICENSE.php
; Note : All ini files need to be saved as UTF-8

COM_HELLOWORLD_NUM="#"
COM_HELLOWORLD_PUBLISHED="Published"
COM_HELLOWORLD_HELLOWORLDS_NAME="Name"
COM_HELLOWORLD_ID="Id"

COM_HELLOWORLD_HELLOWORLD_FIELD_GREETING_DESC="This message will be displayed"
COM_HELLOWORLD_HELLOWORLD_FIELD_GREETING_LABEL="Message"
COM_HELLOWORLD_HELLOWORLD_HEADING_GREETING="Greeting"
COM_HELLOWORLD_HELLOWORLD_HEADING_ID="Id"

Toevoegen van vertalingen bij het menubeheer in het beheergedeelte

Maak met uw bestandsmanager en editor van uw voorkeur een bestand admin/language/en-GB/en-GB.com_helloworld.sys.ini. Dit bestand zal vertalingen voor het beheergedeelte bevatten.

admin/language/en-GB/en-GB.com_helloworld.sys.ini

; Joomla! Project
; Copyright (C) 2005 - 2015 Open Source Matters. All rights reserved.
; License GNU General Public License version 2 or later; see LICENSE.txt, see LICENSE.php
; Note : All ini files need to be saved as UTF-8

COM_HELLOWORLD="Hello World!"
COM_HELLOWORLD_DESCRIPTION="This is the Hello World description"
COM_HELLOWORLD_HELLOWORLD_VIEW_DEFAULT_TITLE="Hello World"
COM_HELLOWORLD_HELLOWORLD_VIEW_DEFAULT_DESC="This view displays a selected message"
COM_HELLOWORLD_MENU="Hello World!"

Taalbestanden locatie opties

Vanaf versie 1.7 zijn er 2 manieren om taalbestanden te installeren voor een extensie. Men kan een van beiden of een combinatie van beiden gebruiken.

De 1.5 manier zal de bestanden in de CORE taalmappen (ROOT/administrator/language/ en ROOT/language/) installeren. Sinds versie 1.6, voegt u de bestanden toe in een "language" map die in de root van de extensie wordt geïnstalleerd.

Zodoende kan een extensie een taalmap toevoegen met een .sys.ini die verschilt van de het bestand dat in de Joomla core taalmap is geïnstalleerd. (De laatste niet ingevoegd in die taalmap maar in root of iedere andere niet geïnstalleerde map.)

Zodoende kunnen 2 verschillende beschrijvingen worden weergeven: een van de sys.ini in de "language" map die wordt gebruikt als bericht nadat de installatie is voltooid, de andere (van de .ini) wordt gebruikt voor "normale" handelingen, zoals het bewerken van de extensie in het beheergedeelte. Dit kan behoorlijk nuttig zijn wanneer de installatie ook enkele scripts gebruikt en een andere waarde vereist als beschrijving.

Dit moet u weten!

Het sys.ini bestand wordt ook gebruikt om de naam van de extensie te vertalen in sommige gedeelten van het beheergedeelte en om vertalingen van het menu te bieden voor componenten.

Derhalve moet in de xml sinds 1.6 ingevoegd worden:

<files>
<[...]
<folder>language</folder>  // This folder HAS to include the right subfolders, i.e. language/en-GB/ ... language/fr-FR/
<filename>whatever</filename>
[...]
</files>

<administration>
    <files folder="admin">
        <[...]
        <folder>language</folder>
        <filename>whatever</filename>
        <[...]
    </files>
</administration>

en/of de (1.5 manier)

<languages folder="joomlacorelanguagefolders"> // If using another language folder for cleanliness. (Any folder name will fit.)
<language tag="en-GB">en-GB/en-GB.whatever.ini</language> // or
<language tag="en-GB">en-GB.whatever.ini</language> if no tagged subfolder
<language tag="en-GB">en-GB/en-GB.whatever.sys.ini</language> // or
<language tag="en-GB">en-GB.whatever.sys.ini</language> if no tagged subfolder
</languages>

of eenvoudig in de ROOT:

<languages>
<language tag="en-GB">en-GB.whatever.ini</language>
<language tag="en-GB">en-GB.whatever.sys.ini</language>
</languages>

Taalbestanden die gebruikt worden door het installatiescript tijdens de installatie van een component(de eerste installatie, niet een upgrade) moeten voldoen aan specifieke regels, beschreven in het artikel Specificatie van taalbestanden. Tijdens de eerste installatie wordt alleen het taalbestand in de component map (/administrator/components/com_helloworld/language) gebruikt indien aanwezig. Indien dit bestand alleen aangeboden wordt in de CORE taalmap (/administrator/language), wordt er geen vertaling weergegeven. Dit geldt ook voor KEYs die gebruikt worden in het manifest bestand.

When upgrading or uninstalling the extension (not installing), it is the sys.ini file present in the extension root language folder which will display the result of the installation from the description key/value. Thereafter, if present, the sys.ini as well as the .ini installed in the CORE language folder will have priority over the files present in the root language folder of the extension.

Advantages of Extension "Language" Folder

One advantage of installing the files in the extension "language" folder is that these are not touched when updating a language pack.

The other advantage is that this folder can include multiple languages (en-GB always, fr-FR, it-IT, etc.) not requiring the user to install the corresponding language pack. This is handy as they are available if, later on, a user installs the corresponding pack.

Inpakken van de component

De inhoud van uw code map

Create a compressed file of this directory or directly download the archive and install it using the extension manager of Joomla. You can add a menu item of this component using the menu manager in the backend.

helloworld.xml

<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="3.0" method="upgrade">

	<name>COM_HELLOWORLD</name>
	<!-- The following elements are optional and free of formatting constraints -->
	<creationDate>January 2018</creationDate>
	<author>John Doe</author>
	<authorEmail>john.doe@example.org</authorEmail>
	<authorUrl>http://www.example.org</authorUrl>
	<copyright>Copyright Info</copyright>
	<license>License Info</license>
	<!--  The version string is recorded in the components table -->
	<version>0.0.8</version>
	<!-- The description is optional and defaults to the name -->
	<description>COM_HELLOWORLD_DESCRIPTION</description>

	<install> <!-- Runs on install -->
		<sql>
			<file driver="mysql" charset="utf8">sql/install.mysql.utf8.sql</file>
		</sql>
	</install>
	<uninstall> <!-- Runs on uninstall -->
		<sql>
			<file driver="mysql" charset="utf8">sql/uninstall.mysql.utf8.sql</file>
		</sql>
	</uninstall>
	<update> <!-- Runs on update; New since J2.5 -->
		<schemas>
			<schemapath type="mysql">sql/updates/mysql</schemapath>
		</schemas>
	</update>

	<!-- Site Main File Copy Section -->
	<!-- Note the folder attribute: This attribute describes the folder
		to copy FROM in the package to install therefore files copied
		in this section are copied from /site/ in the package -->
	<files folder="site">
		<filename>index.html</filename>
		<filename>helloworld.php</filename>
		<filename>controller.php</filename>
		<folder>views</folder>
		<folder>models</folder>
	</files>

        <languages folder="site/language">
		<language tag="en-GB">en-GB/en-GB.com_helloworld.ini</language>
        </languages>

	<administration>
		<!-- Administration Menu Section -->
		<menu link='index.php?option=com_helloworld'>COM_HELLOWORLD_MENU</menu>
		<!-- Administration Main File Copy Section -->
		<!-- Note the folder attribute: This attribute describes the folder
			to copy FROM in the package to install therefore files copied
			in this section are copied from /admin/ in the package -->
		<files folder="admin">
			<!-- Admin Main File Copy Section -->
			<filename>index.html</filename>
			<filename>helloworld.php</filename>
			<filename>controller.php</filename>
			<!-- SQL files section -->
			<folder>sql</folder>
			<!-- tables files section -->
			<folder>tables</folder>
			<!-- models files section -->
			<folder>models</folder>
			<!-- views files section -->
			<folder>views</folder>
		</files>
		<languages folder="admin/language">
			<language tag="en-GB">en-GB/en-GB.com_helloworld.ini</language>
			<language tag="en-GB">en-GB/en-GB.com_helloworld.sys.ini</language>
		</languages>
	</administration>

</extension>

In this helloworld.xml file, languages are installed in:

  • administrator/language for the admin part (look at the xml languages tag).
  • components/com_helloworld/language for the site part (there are no xml languages tag in the site part of the xml description file, but the language folder is included).
Info non-talk.png
General Information

Maak alstublieft een pull request of issue aan op https://github.com/joomla/Joomla-3.2-Hello-World-Component voor enige foute code of een wijziging van de broncode op deze pagina.

Bijdragers