Tutorial - Vorlage FLEXIcontent - Part4: Der Inhalt einer Vorlage
In diesem vierten Teil werde ich darstellen und erklären den Zweck FlexicontentViewItems die es uns ermöglichen, unsere Vorlage für Item zu erreichen. Und so werde ich detailliert alle Variablen, die hilfreich sein in den Aufbau Ihrer eigenen Vorlagen können.
Ich werde auch über eine Menge von Funktionen, die mit der Klasse flexicontent_html gefunden werden kann sprechen.
Dieses Tutorial ist immer noch um mein Beispiel aufbauen wollen, um Informationen über ein Fußballstadion anzuzeigen.
Inhalt:
- Der Zweck FlexicontentViewItems
- Zeigen Sie eine Reihe von Feld aus einer Position
- Zeigt ein einzelnes Feld
- Management-Kommentare
- Machen Sie mehr ...
- Artikel
- item-> oder Felder
- item-> Positionen
- Verwendung
- params
- menu_params
- Die Klasse flexicontent_html
- Function striptadsandcut
- Function extractimagesrc
- Function printbutton
- Function Mailbutton
- Function pdfbutton
Der Zweck FlexicontentViewItems
Dieses Objekt einsetzbar in allen Vorlage für Artikel können Sie bringen alle Informationen in Bezug auf Inhalt.
Es ist erreichbar über die Variable $ this.
Ich jetzt wieder meine item.php Datei (erstellt in part1 dieses Tutorials) und ich werde durch die Überprüfung der Header meiner starten.
A 2 3 4 | / / Verhindert den direkten Zugriff auf die Datei '_JEXEC' ) or die ( 'Restricted access' ) ; defined ('_JEXEC') or die ('Restricted access'); / / Stellen Sie hier den Namen der Vorlage, in unserem Fall. Items.stade $this -> tmpl ; $ Tmpl = $ this -> tmpl; |
Wir werden unsere Vorlage dann zu initiieren Ort ein div-Tag, indem css Klasse personalisierte je nach Stadium und Art der Inhalte. Dafür habe ich zu verwenden:
$ This-> item-> id = gibt die Kennung des Inhalts
$ This-> item-> TYPE_ID = gibt die Kennung von der Art der Inhalte
Es gibt:
16
| $this -> item -> id ; ?> type <?php echo $this -> item -> type_id ; ?> "> <Div id = "stade_contenu" class = "item stade_contenu <php echo $ this -> Artikel -> id;?> Typ <php echo $ this -> Artikel -> TYPE_ID ;?>"> |
Zeigen Sie eine Reihe von Feld aus einer Position
Wie wir in Teil 1 des Tutorials gesehen haben, können FLEXIcontent verwalten anderen Position, wo wir unseren Feldern platzieren können. Diese berechtigt den Benutzer, um diese neuen Felder ohne Änderung der Template-Code statt.
Gerade in unserer Vorlage dann eine Schleife, die alle Felder in einer bestimmten Position enthaltenen gehen. Hier ist der Code, den ich für jede der Positionen, die ich erstellt verwenden würden (header, Adresse, Kontaktdaten, Bild, Beschreibung, Informationen, gmap, unten):
17 18 19 20 21 22 23 24 25 26 27 28 29 30 | <-! BOF Header -> <div id="stade_entete"> ( isset ( $this -> item -> positions [ 'entete' ] ) ) : ?> <? Php if (isset ($ this -> Artikel -> Positionen ['header'])):?> ( $this -> item -> positions [ 'entete' ] as $champ ) : ?> <(- Item -> Positionen ['header'] as $ Bereich Php foreach $ this)?>:> $champ -> name ; ?> "> ? <Div class = "Field_A <php echo $ field -> name ;?>"> ( $champ -> label ) : ?> <? Php if ($ field -> Label):> $champ -> label ; ?> </div> <div class="etiquette"> - Label <php echo $ field?>;?> </ div> ; ?> <? Php endif;?> $champ -> display ; ?> </div> <div class="valeur"> - Anzeige <php echo $ field?>;?> </ div> </ Div> ; ?> <? Php endforeach;?> ; ?> <? Php endif;?> </ Div> <-! EOF Header -> |
Erklärung:
isset ($ this-> item-> Positionen ['header']) / / gibt an, ob die Felder angezeigt werden oder nicht in dieser Position
php foreach ($ this-> item-> Positionen ['header'] as $ field): / / search alle Felder Inhalt der Position
$ Field-> name / / gibt den Namen des Feldes, ich benutze es, um eine einzigartige CSS-Klasse, die mir erlauben dann in meinem Fachgebiet Format, wie ich will erklären wird
$ Field-> label / / gibt die Bezeichnung des Feldes, wo ich wählte meine Einstellungen im Bereich wählte ich den Anschein zu erwecken.
$ Field-> display / / zeigt das Feld Wert formatiert entsprechend den Parametern, die ich einrichten (Präfix + Wert + Suffix)
Zeigt ein einzelnes Feld
Es ist auch möglich, ein Feld direkt anzeigen, ohne die Position. Dies kann manchmal nützlich sein, eine einfache Vorlage ohne Positionen zu machen (die schwerer sind in Bezug auf Code). Ich werde diesen Teil des Codes, um mein Bild anzuzeigen "image_stade."
62 63 64 65 66 67 68 | <-! Soundtrack Bild -> <div id="stade_image"> <div class="champ_image_stade"> $this -> fields [ 'image_stade' ] -> display ; ?> <? Php echo $ this -> fields ['image_stade'] -> Display;>? </ Div> </ Div> <-! EOF Bild -> |
Um direkt auf die Werte und Parameter-Felder, die $ this-> fields ['myfield'].
Management-Kommentare
Bekomme ich nur die Original-Quellcode von FLEXIcontent um das comments:
130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 | ( $this -> params -> get ( 'comments' ) ) : ?> <? Php if ($ this -> params -> get ('comments')):?> <-! BOF Kommentare -> <div class="comments"> <? Php $this -> params -> get ( 'comments' ) == 1 ) : if ($ this -> params -> get ('comments') == 1): file_exists ( JPATH_SITE . DS . 'components' . DS . 'com_jcomments' . DS . 'jcomments.php' ) ) : if (file_exists (JPATH_SITE. DS "-Komponenten. 'DS' com_jcomments. 'DS' jcomments.php ')...): JPATH_SITE . DS . 'components' . DS . 'com_jcomments' . DS . 'jcomments.php' ) ; require_once (. JPATH_SITE. DS "-Komponenten. 'DS' com_jcomments. 'DS' jcomments.php '..); showComments ( $this -> item -> id , 'com_flexicontent' , $this -> escape ( $this -> item -> title ) ) ; echo JComments: showComments ($ this -> Artikel -> id, 'com_flexicontent', $ this -> escape ($ this -> Artikel -> title)); endif; endif; $this -> params -> get ( 'comments' ) == 2 ) : if ($ this -> params -> get ('comments') == 2): file_exists ( JPATH_SITE . DS . 'plugins' . DS . 'content' . DS . 'jom_comment_bot.php' ) ) : if (file_exists (JPATH_SITE. DS 'plugins' DS 'content' DS 'jom_comment_bot.php').....): JPATH_SITE . DS . 'plugins' . DS . 'content' . DS . 'jom_comment_bot.php' ) ; require_once (JPATH_SITE. DS 'plugins' DS 'content' DS 'jom_comment_bot.php'.....); $this -> item -> id , 'com_flexicontent' ) ; JomComment echo ($ this -> Artikel -> id, 'com_flexicontent'); endif; endif; ?> </ Div> <-! EOF Kommentare -> ; ?> <? Php endif;?> |
Durch $ this-> params-> get ('comments'), erlaubt es mir, um die Parameter FLEXIcontent abrufen und so habe ich, ob commantaires zeigen. (0 = keine Kommentare, 1 = 2 = JComments und Jom Comment)
FLEXIcontent integrieren kann das Management Kommentare aus zwei Komponenten JComments (empfohlen) und Jom Comment.
So die Parameter für die Kommentare sind direkt über die Komponente, die integriert ist geschafft.
Machen Sie mehr ...
Durch den folgenden Kapiteln habe ich Ihnen gezeigt, wie Felder zeigen an, so basic, werden es sein, dass man manchmal ein wenig weiter zu gehen in Ihre Vorlage benötigen. Hier sind die wichtigsten Informationen, die Sie in Ihrer Vorlage verwenden können.
Artikel
Dieses Objekt enthält alle Informationen über Ihre Inhalte direkt
Ein Anruf auf diese Weise $ this-> item-> "ownership"
Identifikation | ID in der gegebenen Basis |
Titel | Titel |
alias | Alias |
introtext | Einführender Text (also auf das Feld Beschreibung entspricht, ist bevorzugt) |
Volltext | Volltext (das entspricht der Beschreibung Bereich bevorzugt wird) |
Zustand | Staatliche Publishing (1: published 0: Unveröffentlichte -1: archiviert, -2: gelöscht, -3: wartet auf die Genehmigung, -4: Entwurf, -5: in progress) |
sectionid | Abschnitt |
catid | Hauptkategorie |
erstellt | Creation date |
created_by | Identifizierung des Autors |
created_by_alias | Alias des Autors |
geändert | Zuletzt aktualisiert am |
modified_by | Id letzten Abschnitt hat der Autor geändert |
a.publish_up | Startdatum der Veröffentlichung |
publish_down | End Datum der Veröffentlichung |
Version | Version Number |
Bestellung | Zahl, die angibt Rangfolge |
metaKey | Keywords Meta-Daten |
metadesc | Beschreibung von Meta-Daten |
Metadaten | Robots und Author Meta-Daten |
Zugang | Zugriffsebene (0: public, 1: Private 2: Special) |
Hits | Anzahl der Besuche |
idem_id | Id Inhalt |
TYPE_ID | Identifizierung der Art des Inhalts |
Sprache | Language (de-DE, en-US ...) |
search_index | Der Text ist für die Suche indiziert |
cataccess | Zugang Ebene der Kategorie (0: public, 1: Private 2: Special) |
catpublished | Zeigt an, ob die Kategorie veröffentlicht wird oder nicht |
Autor | Name des Autors |
usertype | Name der Gruppe des Benutzers |
typename | Beschriften Sie die Art des Inhalts |
creatoremail | Email der Schöpfer der ursprünglichen |
Schöpfer | Name des Schöpfers |
Änderung | Name des letzten Autors, die eine Änderung vorgenommen |
Text | Text (Feld Beschreibung) in der Vorlage dargestellt werden (Einführung oder Volltext) |
Katzen | Tabelle mit den Kategorien zugeordnet (Katzen [x] -> id, Katzen [x] -> title ...) |
Felder | Siehe Details im nächsten Kapitel item-> Felder |
readmore_link | Way to die "mehr lesen link» |
Positionen | Siehe Details im nächsten Kapitel item-> Positionen |
FieldValues | Liste den Wert der Felder in einer Tabelle (FieldValues [id_du_champs] [x]) |
favs | Anzahl der Benutzer, dass der Inhalt hinzugefügt haben in ihre Lieblings- |
fav | Zeigt an, ob der Inhalt in Favoriten platziert werden können |
Abstimmung | Objekt mit den folgenden Werten: rating_sum (Mittelwert der Stimmen), rating_count (Stimmen) lastip (ip Stimmrechte letzte Adresse). |
item-> oder Felder
Auf diese Weise können alle Informationen über die Felder in der Vorlage bekommen können, entweder für den Kernbereichen (Titel, Text, aber alle benutzerdefinierten Felder (wie Sie benannt haben), die mit der Art angezeigt assoziiert.
Ein Anruf auf diese Weise $ this-> item-> fields ['Feldname'] -> "Eigentum" oder so $ this-> fields ['Feldname'] -> "ownership"
Identifikation | ID-Feld |
field_type | Field Type |
Name | Feldname |
Etikett | Label des Feldes |
Beschreibung | Feldbeschreibung |
IsFilter | Dieses Feld ist ein Filter? |
iScore | |
isearch | Das Feld wird für Forschungszwecke verwendet |
isadvsearch | Das Feld ist für die erweiterte Suche verwendet? |
veröffentlicht | Veröffentlicht oder nicht |
Zugang | Zugriffsebene (0: public, 1: Private 2: Special) |
Bestellung | Zahl, die angibt Rangfolge |
Wert | Wertetabelle Eingabefeld |
Anzeige | Anzeigen der formatierten Wert des Feldes. |
Jedes Feld hat auch Parameter, die auf diese Weise (unter JParameter) zurückgewonnen werden können:
$ This-> item-> fields ['Feldname'] -> Parameter-> get ('parameter')
Hier sind die wichtigsten Parameter, die gefunden werden, können nicht alle in Abhängigkeit von der Art des Feldes verwendet werden.
display_label | Anzeigefeld |
remove_space | Leerzeichen entfernen |
Vorwand | Präfix |
posttext | Suffix |
default_value | Default |
allow_multiple | Mehrere Werte zulassen |
MAX_VALUE | Maximalwert |
Größe | Feldgröße |
separatorf | Separator Werte für das Frontend |
OpenTag | Vorherige Tag-Wert |
closeTag | Tag folgenden Wert |
date_format | Standard-Display-Format des Datums |
custom_date | Kundenspezifische Display-Format des Datums |
Reihen | Anzahl der Zeilen in einer textarea |
Pässe | Anzahl der Spalten in einer textarea |
use_html | Der HTML-Editor aktiviert ist? |
item-> Positionen
Wie bereits erläutert können Sie durch alle Positionen einer Vorlage durchsuchen, um Ihre Felder anzuzeigen. Hier ist die detaillierte Informationen, die Sie verwenden können.
Ein Anruf auf diese Weise $ this-> item-> Positionen ['name der Position] [' Feldname '] -> "ownership"
Identifikation | ID-Feld |
Name | Feldname |
Etikett | Label des Feldes |
Anzeige | Formatierte Wert des Feldes |
Verwendung
Dieser Objekttyp juser gibt Ihnen Informationen über den aktuell angemeldeten
Ein Anruf auf diese Weise $ this-> Benutzer -> "Eigenschaft"
Identifikation | ID des Benutzers |
Name | Name |
Benutzername | Benutzeranmeldung |
E-Mail-Adresse des Benutzers | |
usertype | Art der Benutzer |
registerDate | Datum der Registrierung |
lastvisitDate | Datum der letzten Verbindung |
params
Es ist eine Aufgabe JParameter, dass es uns ermöglichen, die Parameter für den Inhalt finden.
$ This-> params-> get ('parameter')
flexi_section | Section mit FLEXIcontent verbunden |
Kommentare | Enable-Eingang (0 = keine Kommentare, 1 = 2 = JComments und Jom Comment) |
SUPPORT_URL | Support-URL |
flexi_fish | Aktivieren Sie die Unterstützung Joomfish |
filtercat | Filter Kategorien views |
filtertag | Filtern Abrufen tags |
use_versioning | Aktivieren Versionierung |
nr_versions | Versionen gehalten |
show_title | Titel von Inhalten |
link_title | Als clickable |
show_readmore | Link Lesen Sie mehr ... |
show_icons | Icons |
show_pdf_icon | PDF-Symbol |
show_print_icon | Symbol Drucken |
show_email_icon | E-Mail-Symbol |
Grenze | Artikel pro Seite |
catlimit | Limit-Listen (Kategorien) |
upload_extensions | Zulässige Erweiterungen (Dateitypen) |
upload_maxsize | Maximale Größe |
file_path | Sicherer Pfad zu dem Verzeichnis |
media_path | Medien Pfad zu dem Verzeichnis |
restrict_uploads | Beschränken Uploads |
check_mime | Überprüfen Sie MIME-Typen |
image_extensions | Extensions von Bildern erlaubt (File Types) |
ignore_extensions | Erweiterungen ignoriert |
upload_mime | MIME-Typen erlaubt |
enable_flash | Enable upload Flash- |
feed_summary | Für jeden RSS-Feed |
advcache | Erweiterte Cache |
advcache_time | Dauer des Cache |
advcache_guest | Besucher nur |
disablecss | Disable CSS |
item_depth | Gegenstandsstufe |
add_item_pathway | Zum Verlauf hinzufügen |
show_page_title | Seitentitel |
menu_image | Menü Bild |
sichern | Aktive SSL |
page_title | Lassen Sie sich die Titel der Seite |
page_description | Meta Beschreibung |
menu_params
Es ist eine Aufgabe JParameter die es uns ermöglichen, die Parameter mit dem Menü der Inhalte, die angezeigt werden muss damit verbundenen erholen wird.
$ This-> menu_params-> get ('parameter')
item_depth | Gegenstandsstufe |
add_item_pathway | Zum Verlauf hinzufügen |
page_title | Seitentitel |
show_page_title | Lassen Sie sich die Titel der Seite |
pageclass_sfx | CSS Class Suffix |
menu_image | Menü Bild |
sichern | Aktive SSL |
Die Klasse flexicontent_html
Diese Klasse von FLEXIcontent bietet einige nützliche Features für unsere Vorlagen.
Function striptagsandcut
Dieses Feature ermöglicht es uns, HTML-Tags aus einem Text heraus und schneiden sauber nach einer bestimmten Anzahl von Zeichen.
/ / Dieses Beispiel formatiert und nach 100 Zeichen $ my_text truncate striptagsandcut ( $mon_texte , 100 ) ; echo flexicontent_html: striptagsandcut ($ my_text, 100);
Function extractimagesrc
Dieses Feature ermöglicht es uns, ein Image-Tag aus einem Feld vom Typ Bild zu erzeugen.
/ / Dieses Beispiel formatiert und nach 100 Zeichen $ my_text truncate extractimagesrc ( $this -> fields [ 'mon_champ_image' ] ) ; echo flexicontent_html: extractimagesrc ($ this -> fields ['mon_champ_image']);
Function printbutton
Diese Funktion zeigt den Knopf und den Link zu den aktuellen Inhalt drucken
/ / Dieses Beispiel zeigt das Symbol Drucken in unserer Inhalte printbutton ( $this -> print_link , $this -> params ) ; echo flexicontent_html: printbutton ($ this -> PRINT_LINK, $ this -> params);
Function Mailbutton
Diese Funktion zeigt den Knopf und den Link zu aktiven Inhalten in E-Mail empfehlen
/ / Dieses Beispiel zeigt das Symbol Mail an unseren Inhalten mailbutton ( 'items' , $this -> params , null , $this -> item -> slug ) ; echo flexicontent_html: Mailbutton ('Elemente', $ this -> params, null, $ this -> Artikel -> slug);
Function pdfbutton
Diese Funktion zeigt den Knopf und den Link zu aktiven Inhalten zu generieren in pdf
/ / Dieses Beispiel zeigt das Symbol in unserem PDF-Inhalte pdfbutton ( $this -> item , $this -> params ) ; echo flexicontent_html: pdfbutton ($ this -> item, $ this -> params);
Dies ist das vierte Spiel ist vorbei, ich das nächste Mal die Vorlagen Kategorie-Adresse wird. Einmal mehr stellen Sie bitte Ihre Anmerkungen oder Fragen zu stellen, wenn Sie etwas nicht verstehen.













Am 24.02.2010 um 09:18 Uhr, Emmanuel Danan sagte:
Wow, was für Synthese
Ein Wort: BRAVO!
Vielen Dank an Sie für diesen neuen Beitrag.
Manu.