Beiträge von Jes Ster


    @Jes Ster Warum muss $this hier weg?


    Ohje, gute Frage... Ich weiß nur, dass man sich bei der objektorientierten Programmierung mit $this auf das "umgebende" Objekt bezieht. Ich schätze mal es hat etwas mit der foreach-Schleife zu tun und weil dort die Objekte erst erzeugt werden?? ?(


    Ich hab aber noch ein Problem mit den Modulen:
    Ich habe in der "_item.php" ein bestimmtes Layout aus <div>-Containern mit verschiedenen Klassen festgelegt. Das funktioniert auch so weit, aber immer nur für das erste Objekt, das erzeugt wird. Für alle weiteren Objekte werden die Container anders aufgebaut, quasi in einer anderen Reihenfolge. Mein CSS funktioniert aber nur, wenn die Container und die damit verbundenen Klassen immer exakt in der vorgebebenen Reihenfolge sind. Warum baut Joomla die Struktur bei weiteren Objekten um? Kann mir das jemand erklären und sagen, wie ich das verhindere? :huh:


    Danke und Grüße,
    Jessica

    Ich habe den Code, wie von dir gesagt, in die foreach-Schleife des Moduls eingebaut, aber dann verhaut es mir das Layout der ganzen Seite und zeigt nur noch den ersten Beitrag an - ohne Formatierung.


    Hier der Code:


    Ich geb mir echt Mühe das Ganze zu verstehen, aber ich weiß einfach zu wenig über PHP, objektorientierte Programmierung und welche Tabellen etc. Joomla verwendet. Ich probiere schon immer selbst aus, bevor ich hier poste. Es tut mir ja leid, aber ich bekomme es einfach nicht hin. Es wäre super, wenn mir irgendjemand helfen könnte.


    Tausend Dank nochmal!

    Es geht einerseites um das Modul "Beiträge Neueste" und um das Modul "Beiträge News". Beiden wurden Beiträge von verschiedenen Kategorien zugewiesen.
    Ich brauche jetzt auf der Übersicht der Beiträge für Neueste einmal ein Datum das im Backend in einem Formularfeld eingegeben wurde.
    Und für News brauche ich die Kategorie - die kommt aber nicht aus einem Formular - aber sie wird nicht angezeigt, obwohl ich im Backend eingestellt habe, dass die Kategorie angezeigt werden soll.

    Jetzt muss ich doch nochmal fragen: Ich muss auch ein Overrite für Module erstellen. Wie bekomme ich die Attribute der Artikel in das Overrite für das Modul?


    PHP
    <?php $articleParams = new Joomla\Registry\Registry($this->item->attribs);
    echo $articleParams->get('menschen_name'); ?>


    Dieser Code funktioniert dort nämlich leider nicht... ;(

    Ok, am besten ich teile hier mal den Code für das Plugin... :S


    menschen.php:


    menschen.xml:


    Und die content.xml im Ordner "forms" des Plugins:


    Und hier der das Overrite, das wir im Ordner "article" erstellt haben (musste gekürzt werden auf Grund der begrenzten Zeichen, die zur Verfügung stehen, daher nur die Bereiche, die wir angepasst haben):


    Wir haben die Vorlage für das Plugin zur Erstellung der Formularfelder im Backend von unserem Dozenten bekommen (der selber Joomla-Anfänger ist und es aus dem Internet hat) und es einfach abgewandelt. So weit ich es verstanden habe, werden die Eingaben in die Felder in einer Datenbank gespeichert, ist das korrekt? Wenn ja, wie kann ich die an anderer Stelle auslesen?


    Vielen Dank für eure vielen Antworten! Ich hoffe, wir können das Problem zusammen lösen! ^^


    P.S.: Ich bin zwar Joomla-Anfänger, aber ich kenne mich im Backend schon so weit aus, dass ich weiß, welche Einstellungen vorgenommen werden müssen, damit Beiträge in einem Kategorieblog dargestellt werden können. Ich habe ein Praktikum in einer Agentur gemacht, die ausschließlich mit Joomla arbeitet. Ich kenne mich vor allem im Bereich der Template-Programmierung nicht aus, da ich im Praktikum lediglich das CSS bereits vorhandener Templates angepasst habe.


    Edit by @Indigo66: Langen Code in Spoiler, siehe Forenregel!

    Eigentlich nicht. Sie werden ganz normal als Formulardaten gespeichert. Die dritte Variante war nur ein verzweifelter Versuch meinerseits irgendwie an die Daten zu kommen. Aber wie du schon erkannt hast, liest das nur Pluginparameter aus und das ist nicht das, was ich brauche. Ich brauche die Formularfelddaten, also das, was ich im Backend in die Felder eingetragen habe.

    Ok, wenn ich das eingebe, zeigt er mir für den einen Beitrag die ID = 3 an und für den anderen 4. Und das stimmt auch mit dem Backend überein.
    Sorry, aber wie meinst du das, dass ich im Backend überprüfen soll, ob der Beitrag gefüllte Felder hat? Die hat er auf jeden Fall, denn der Beitrag kann ja angeklickt werden und dann komm ich zum vollen Beitrag. Und er wurde auch schon im aktivierten Plugin gespeichert, denn ohne Plugin wären die Felder ja gar nicht da und ich könnte die Werte auch nicht im Frontend ausgeben lassen, oder?

    Der Code für die Beitragsansicht ist ganz normal:

    PHP
    <?php echo $params->get('menschen_name'); ?>


    Und der funktioniert auch. Aber wie gesagt, in der blog_item.php funktioniert es auf einmal nicht mehr. Und ich hab auch schon $params auslesen lassen und die Formularfelder sind da gar nicht drin, sondern nur die ganzen Einstellungen, die man für die Kategorie vornehmen kann.


    Das kommt raus, wenn ich deinen Code eingebe (Edit: jetzt mit Code-Tag):

    Code
    DEBUG: Joomla\Registry\Registry Object ( [data:protected] => stdClass Object ( [article_layout] => _:default [show_title] => 0 [link_titles] => 1 [show_intro] => 0 [info_block_position] => 0 [info_block_show_title] => 0 [show_category] => 0 [link_category] => 1 [show_parent_category] => 0 [link_parent_category] => 0 [show_author] => 0 [link_author] => 0 [show_create_date] => 0 [show_modify_date] => 0 [show_publish_date] => 0 [show_item_navigation] => 1 [show_vote] => 0 [show_readmore] => 1 [show_readmore_title] => 1 [readmore_limit] => 100 [show_tags] => 1 [show_icons] => 0 [show_print_icon] => 0 [show_email_icon] => 0 [show_hits] => 0 [show_noauth] => 0 [urls_position] => 0 [show_publishing_options] => 1 [show_article_options] => 1 [save_history] => 1 [history_limit] => 10 [show_urls_images_frontend] => 0 [show_urls_images_backend] => 1 [targeta] => 0 [targetb] => 0 [targetc] => 0 [float_intro] => left [float_fulltext] => left [category_layout] => _:blog [show_category_heading_title_text] => 1 [show_category_title] => 0 [show_description] => 0 [show_description_image] => 0 [maxLevel] => 1 [show_empty_categories] => 0 [show_no_articles] => 1 [show_subcat_desc] => 1 [show_cat_num_articles] => 0 [show_cat_tags] => 1 [show_base_description] => 1 [maxLevelcat] => -1 [show_empty_categories_cat] => 0 [show_subcat_desc_cat] => 1 [show_cat_num_articles_cat] => 1 [num_leading_articles] => 1 [num_intro_articles] => 4 [num_columns] => 2 [num_links] => 4 [multi_column_order] => 0 [show_subcategory_content] => 0 [show_pagination_limit] => 1 [filter_field] => hide [show_headings] => 1 [list_show_date] => 0 [date_format] => [list_show_hits] => 1 [list_show_author] => 1 [orderby_pri] => order [orderby_sec] => rdate [order_date] => published [show_pagination] => 2 [show_pagination_results] => 1 [show_featured] => show [show_feed_link] => 1 [feed_summary] => 0 [feed_show_readmore] => 0 [show_page_heading] => [layout_type] => blog [menu_text] => 1 [menu_show] => 1 [pageclass_sfx] => detail-card [secure] => 0 [page_title] => Menschen [page_description] => [page_rights] => [robots] => [access-view] => 1 ) [initialized:protected] => 1 [separator] => . )


    Ich suche aber nach Feldern, die mit "menschen_ " anfangen. Und davon sind keine dabei. :/
    Und die spannende Frage ist ja: Wie bekomme ich die da hin???

    Hallo zusammen!


    Ich bin absoluter Joomla!-Anfänger und muss aber für einen Kurs an der Uni ein Template programmieren, mit dem ich die Seite unseres Studiengangs nachbauen soll (CSS- und JavaScript-Dateien werden zur Verfügung gestellt).


    Mit einer Kommilitonin hab ich mich jetzt so weit durchgekämpft, dass es eigentlich nur noch an einem Hauptproblem scheitert: Und zwar mussten wir mit Hilfe eines selbstgeschriebenen Plugins Formularfelder im Backend erzeugen, mit denen Nutzer dann eine Art Steckbrief für sich anlegen können, mit Bild, Name, Telefonnummer etc.. Das funktioniert auch alles und auch die Darstellung der Daten als Artikel haben wir hinbekommen. Jetzt muss noch die Darstellung der Übersicht des Kategorieblogs angepasst werden. Dazu sollen aber Inhalte aus den Formularfeldern in der Artikelvorschau verwendet werden (z.B. der Name der Person).


    Über die Zeile:

    PHP
    <?php echo $params->get('menschen_name'); ?>

    funktioniert es leider nicht.


    Und auch

    PHP
    <?php echo $this->article->getParams()->get('menschen_name'); ?>

    geht nicht.


    Jetzt habe ich versucht an Hand einer Anleitung aus dem Netz die Parameter des Plugins zu importieren:


    PHP
    <?php // Get plugin 'menschen' of plugin type 'content'
    $plugin = JPluginHelper::getPlugin('content','menschen');
    
    
    if($plugin){
        // Get plugin params
        $pluginParams = new JRegistry($plugin->params);
    } ?>


    Aber auch das scheint nicht die richtige Lösung zu sein. thinking


    Kann mir irgendjemand sagen, wie ich Zugriff auf die Formulardaten des Plugins bekomme, wenn ich mich in der Datei blog_item.php befinde?? ?(


    Vielen Dank und Grüße,
    Jes