Zusätzliche Seiten für Inpressum, Kontakt, FAQ etc. im Hauptmenü Zusätzliche Seiten für Inpressum, Kontakt, FAQ etc. im Hauptmenü
 

News:

CPG Release 1.6.26
Correct PHP8.2 issues with user and language managers.
Additional fixes for PHP 8.2
Correct PHP8 error with SMF 2.0 bridge.
Correct IPTC supplimental category parsing.
Download and info HERE

Main Menu

Zusätzliche Seiten für Inpressum, Kontakt, FAQ etc. im Hauptmenü

Started by cgc-11, January 10, 2009, 10:40:47 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

cgc-11

Hallo Leute,
nach langer Suche im Forum und tagelangem experimentieren bin ich nun nicht klüger als zuvor.
Im Gegenteil - ich bin verunsicherter als zuvor, ich hätte nicht so viel lesen sollen.
Es gibt jede Menge sich gegenseitig widersprechender Threads zu diesem Thema.

Meiner themes.php (basierend auf "Rainy Day") habe ich nun folgenden Code am Ende (natürlich vor ?>) hinzugefügt:
    // HTML template for template sys_menu spacer
        $template_sys_menu_spacer = "::";

//   Creates an array of tokens to be used with function assemble_template_buttons
//   this function is used in this file it needs to be declared before being called.

        function addbutton(&$menu,$href_lnk,$href_title,$href_tgt,$block_id,$spacer)

//   HTML template for template sys_menu buttons
//   {HREF_LNK}{HREF_TITLE}{HREF_TGT}{BLOCK_ID}{SPACER}
//      addbutton($sys_menu_buttons,'{HOME_LNK}','{HOME_TITLE}','{HOME_TGT}','home',$template_sys_menu_spacer);
//      addbutton($sys_menu_buttons,'{MY_GAL_LNK}','{MY_GAL_TITLE}','{MY_GAL_TGT}','my_gallery',$template_sys_menu_spacer);
//      addbutton($sys_menu_buttons,'{MEMBERLIST_LNK}','{MEMBERLIST_TITLE}','{MEMBERLIST_TGT}','allow_memberlist',$template_sys_menu_spacer);
//      addbutton($sys_menu_buttons,'{MY_PROF_LNK}','{MY_PROF_TITLE}','{MY_PROF_TGT}','my_profile',$template_sys_menu_spacer);
//      addbutton($sys_menu_buttons,'{ADM_MODE_LNK}','{ADM_MODE_TITLE}','{ADM_MODE_TGT}','enter_admin_mode',$template_sys_menu_spacer);
//      addbutton($sys_menu_buttons,'{USR_MODE_LNK}','{USR_MODE_TITLE}','{USR_MODE_TGT}','leave_admin_mode',$template_sys_menu_spacer);
//      addbutton($sys_menu_buttons,'{UPL_PIC_LNK}','{UPL_PIC_TITLE}','{UPL_PIC_TGT}','upload_pic',$template_sys_menu_spacer);
//      addbutton($sys_menu_buttons,'{REGISTER_LNK}','{REGISTER_TITLE}','{REGISTER_TGT}','register',$template_sys_menu_spacer);
//      addbutton($sys_menu_buttons,'{FAQ_LNK}','{FAQ_TITLE}','{FAQ_TGT}','faq',$template_sys_menu_spacer);
//      addbutton($sys_menu_buttons,'{LOGIN_LNK}','{LOGIN_TITLE}','{LOGIN_TGT}','login','');
//      addbutton($sys_menu_buttons,'{LOGOUT_LNK}','{LOGOUT_TITLE}','{LOGOUT_TGT}','logout','');

      addbutton($sys_menu_buttons,'http://www.meine-seite.com/impressum.php','Impressum','Zum Impressum','impressum',$template_sys_menu_spacer);

      // Login and Logout don't have a spacer as only one is shown, and either would be the last option.


als Egebnis bekomme ich die Ausgabe:

QuoteTemplate error
Failed to find block 'logout'(#(<!-- BEGIN logout -->)(.*?)(<!-- END logout -->)#s) in :

  <div class="topmenu">
          <table border="0" cellpadding="0" cellspacing="0">
                  <tr>
  <!-- BEGIN impressum -->
  <td><img src="images/spacer.gif" width="5" height="25" border="0" alt="" /></td>
  <td><img src="themes/cgc/images/button1_r1_c1.gif" width="5" height="25" border="0" alt="" /></td>
  <td style="background-image:url(themes/cgc/images/button1_r1_c2.gif)">
          <a href="Zum Impressum" title="Impressum">http://www.meine-seite.com/impressum.php</a>
  </td>
  <td><img src="themes/cgc/images/button1_r1_c3.gif" width="5" height="25" border="0" alt="" /></td>
<!-- END impressum -->
                  </tr>
          </table>
  </div>

Natürlich habe ich auch die Datei impressum.php angelegt ...

Den Block "logout" habe ich gar nicht geändert, bei meiner Einfügung ist dieser ja auskommentiert.
Ich habe doch lediglich einen Menüpunkt "Impressum" hinzufügen wollen ...

Warum gibt es zu diesem einfachen Problem keine nützliche und klare Anleitung?
Ich lese immer nur "siehe den Thread ..." oder ähnliches.
Das ist für mich keine Hilfe wenn sich die Angaben dort widersprechen!
Und man wechselt von englisch nach deutsch und von thread zu thread und weiss am Ende gar nicht mehr wa eigentlich stimmt...!

Nichts für ungut, ich bin immer dankbar für Hilfe, ich helfe mir meistens sogar selber ...
Aber in diesem Fall bin ich scheinbar zu blöd um auf den richtigen Weg zu kommen!

Gerhard

Αndré

Wenn du neue Buttons hinzufügen möchtest, musst du die alten vorher auch nochmal bekannt machen.

Ersetze deinen Code mit diesem:
// Creates an array of tokens to be used with function assemble_template_buttons
// this function is used in this file it needs to be declared before being called.
function addbutton(&$menu,$href_lnk,$href_title,$href_tgt,$block_id,$spacer) {
  $menu[]=array($href_lnk,$href_title,$href_tgt,$block_id,$spacer);
}


// HTML template for sys_menu
$template_sys_menu = <<<EOT
          {BUTTONS}
EOT;

// HTML template for sub_menu
$template_sub_menu = $template_sys_menu;

if (!defined('THEME_HAS_NO_SYS_MENU_BUTTONS')) {

  // HTML template for template sys_menu spacer
  $template_sys_menu_spacer ="::";

  // HTML template for template sys_menu buttons
  $template_sys_menu_button = <<<EOT
  <!-- BEGIN {BLOCK_ID} -->
        <a href="{HREF_TGT}" title="{HREF_TITLE}">{HREF_LNK}</a> {SPACER}
  <!-- END {BLOCK_ID} -->
EOT;

  // HTML template for template sys_menu buttons
    // {HREF_LNK}{HREF_TITLE}{HREF_TGT}{BLOCK_ID}{SPACER}
    addbutton($sys_menu_buttons,'{HOME_LNK}','{HOME_TITLE}','{HOME_TGT}','home',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{MY_GAL_LNK}','{MY_GAL_TITLE}','{MY_GAL_TGT}','my_gallery',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{MEMBERLIST_LNK}','{MEMBERLIST_TITLE}','{MEMBERLIST_TGT}','allow_memberlist',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{MY_PROF_LNK}','{MY_PROF_TITLE}','{MY_PROF_TGT}','my_profile',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{ADM_MODE_LNK}','{ADM_MODE_TITLE}','{ADM_MODE_TGT}','enter_admin_mode',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{USR_MODE_LNK}','{USR_MODE_TITLE}','{USR_MODE_TGT}','leave_admin_mode',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{UPL_PIC_LNK}','{UPL_PIC_TITLE}','{UPL_PIC_TGT}','upload_pic',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{REGISTER_LNK}','{REGISTER_TITLE}','{REGISTER_TGT}','register',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{FAQ_LNK}','{FAQ_TITLE}','{FAQ_TGT}','faq',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{LOGIN_LNK}','{LOGIN_TITLE}','{LOGIN_TGT}','login','');
    addbutton($sys_menu_buttons,'{LOGOUT_LNK}','{LOGOUT_TITLE}','{LOGOUT_TGT}','logout','');
    addbutton($sys_menu_buttons,'http://www.meine-seite.com/impressum.php','Impressum','Zum Impressum','impressum',$template_sys_menu_spacer);
    // Login and Logout don't have a spacer as only one is shown, and either would be the last option.

  $params = array('{BUTTONS}' => assemble_template_buttons($template_sys_menu_button,$sys_menu_buttons));
  $template_sys_menu = template_eval($template_sys_menu,$params);
}

und teste, ob es damit geht.

cgc-11

Danke für die Mühe, aber es geht nicht.
Damit habe ich zwar keine Fehlermeldung aber auch nach 4 Stunden noch keine Ausgabe.
Ich gebs jetzt auf, habe ich eben keine Zusatzseiten ...

Αndré

Sorry mein Fehler. Ich hatte meinen Code nicht getestet. Folgende Zeilen waren zu viel:
  $params = array('{BUTTONS}' => assemble_template_buttons($template_sys_menu_button,$sys_menu_buttons));
  $template_sys_menu = template_eval($template_sys_menu,$params);



Mit diesem Code (getestet! ;)) funktioniert es:
function addbutton(&$menu,$href_lnk,$href_title,$href_tgt,$block_id,$spacer)
{
  $menu[]=array($href_lnk,$href_title,$href_tgt,$block_id,$spacer);
}

$template_sys_menu_spacer='';

addbutton($sys_menu_buttons,'{HOME_LNK}','{HOME_TITLE}','{HOME_TGT}','home',$template_sys_menu_spacer);
addbutton($sys_menu_buttons,'{MY_GAL_LNK}','{MY_GAL_TITLE}','{MY_GAL_TGT}','my_gallery',$template_sys_menu_spacer);
addbutton($sys_menu_buttons,'{MEMBERLIST_LNK}','{MEMBERLIST_TITLE}','{MEMBERLIST_TGT}','allow_memberlist',$template_sys_menu_spacer);
addbutton($sys_menu_buttons,'{MY_PROF_LNK}','{MY_PROF_TITLE}','{MY_PROF_TGT}','my_profile',$template_sys_menu_spacer);
addbutton($sys_menu_buttons,'{ADM_MODE_LNK}','{ADM_MODE_TITLE}','{ADM_MODE_TGT}','enter_admin_mode',$template_sys_menu_spacer);
addbutton($sys_menu_buttons,'{USR_MODE_LNK}','{USR_MODE_TITLE}','{USR_MODE_TGT}','leave_admin_mode',$template_sys_menu_spacer);
addbutton($sys_menu_buttons,'{UPL_PIC_LNK}','{UPL_PIC_TITLE}','{UPL_PIC_TGT}','upload_pic',$template_sys_menu_spacer);
addbutton($sys_menu_buttons,'{REGISTER_LNK}','{REGISTER_TITLE}','{REGISTER_TGT}','register',$template_sys_menu_spacer);
addbutton($sys_menu_buttons,'{FAQ_LNK}','{FAQ_TITLE}','{FAQ_TGT}','faq',$template_sys_menu_spacer);
addbutton($sys_menu_buttons,'{LOGIN_LNK}','{LOGIN_TITLE}','{LOGIN_TGT}','login','');
addbutton($sys_menu_buttons,'{LOGOUT_LNK}','{LOGOUT_TITLE}','{LOGOUT_TGT}','logout','');
addbutton($sys_menu_buttons,'Impressum','Zum Impressum','impressum.php','impressum',$template_sys_menu_spacer);

cgc-11

Danke, jetzt hat es geklappt.
Bleibt nur zu hoffen dass ich auch Informationen dazu finde, wie ich die Inhalte der Zusatzseiten ebenfalls in minicms anlegen und editieren kann und nicht wie jetzt direkt in der php-Datei.
Meine Datei sieht jetzt so aus:
<?php
/*************************
  Coppermine Photo Gallery
    ************************
      Copyright (c) 2003-2005 Coppermine Dev Team
        v1.1 originaly written by Gregory DEMAR

          This program is free software; you can redistribute it and/or modify
            it under the terms of the GNU General Public License as published by
              the Free Software Foundation; either version 2 of the License, or
                (at your option) any later version.
                  ********************************************
                    Coppermine version: 1.4.19
                    **********************************************/

                    
define('IN_COPPERMINE'true);
                    require(
'include/init.inc.php');

                    
pageheader('Impressum');

                    
starttable('-1''Impressum');
                    
?>

                    <tr><td>
                    Inhalt ...
                    </td></tr>
                    <?php
                    endtable
();
                    
pagefooter();
                    
ob_end_flush();

                    
?>


Anstelle von "Inhalt ..." sollte ja das minicms eingreifen ...

LG Gerhard

Αndré

Wenn du das minicms verwendest, brauchst du keine extra php-Dateien erstellen. Dafür müssen im minicms deine neuen Einträge vom Typ "Section" sein. Dann kannst du diese per Menü verlinken - das sollte aber ausführlich in der Doku von minicms stehen.

cgc-11

OK, dann bin ich ja auf der richtigen Spur.
Aber was ich gefunden habe ist sehr umfangreich und in englisch.
Sorry, aber das habe ich nicht gelernt und kann es nur lückenhaft.
Deshalb habe ich ja anfangs nur grob drüber gelesen ...

cgc-11

Quote from: eenemeenemuu on January 10, 2009, 06:55:27 PM... das sollte aber ausführlich in der Doku von minicms stehen.
Ausführlichste Suche hat bisher nichts ergeben.
Wo bitte finde ich die viel gepriesene Doku zu MiniCMS  :o
Der hier --> http://forum.coppermine-gallery.net/index.php/topic,15543.0.html angepriesene link ist tot --> http://cpg-contrib.org/thumbnails.php?album=1
Auch der link zum Contrib-Forum ist tot --> http://cpg-contrib.org/board/index.php?board=2.0
Was ich finde ist die allgemeine Doku zu Coppermine - sogar schon zu 1.5.x --> http://documentation.coppermine-gallery.net/de/languages.htm
Auf der Startseite ist die Version 1.7 von MiniCMS noch gar nicht vorhanden --> http://cpg-contrib.org/index.php
In den Foren gehen die links kreuz und quer von einem thread zu manderen.
Es gibt dutzende links, alle führen im Kreis doch nur wieder zurück oder zur downloadseite von sourceforge.net oder ins Nirvana ...

Aber: WO BITTE BITTE BITTE ist eine Anleitung zu MiniCMS ???
Von mir aus auch in englisch - aber BITTE WO  :-\

Αndré

http://cpg-contrib.org/thumbnails.php?album=1
QuoteYou can include any article in its own page to be used as a hyperlink by using it's ID.
http://cpg-contrib.org/index.php?file=minicms/cms&id=5
Quote from: eenemeenemuu on January 10, 2009, 06:55:27 PM
Dafür müssen im minicms deine neuen Einträge vom Typ "Section" sein.

Probleme mit minicms werden im minicms-Board beantwortet.

cgc-11

QuoteProbleme mit minicms werden im minicms-Board beantwortet.
Danke Meister, aber das bringt mich nicht weiter.
Ich habs versucht.
In diesem Board gibt es unzählige Fragen auch jede Menge Fragen nach Dokumentation - aber keine Antworten darauf.
Noch dazu ist es in englisch. Ich habe mich aber bemüht, mein Begehren in den Texten zu finden. Nada. ???
Daher habe ich nun eine FAQ-Seite mit dem vorgegebenen Text realisiert, aber ich komme nicht dahinter, wo dieser abgelegt ist oder wie man ihn ändern und anpassen könnte.
Ich habe auch versucht, ein Impressum zu basteln ohne php-Datei im root-Verzeichnis - wie oben angedeutet.
Ich kann den Text eingeben etc., ich habe die impressum.php entfernt ... aber es wird immer noch der ursprüngliche Text aus der php-Datei ausgegeben und nicht der aus minicms.
Was solls - schade nur, denn diese Super-Erweiterung für das System wäre so wertvoll, aber wenn es nur Eingeweihten möglich ist etwas damit zu machen finde ich sie sinnlos.
Einem Idioten (wie mich) der kaum englisch versteht und der nicht programmieren kann, ist es auf diesem Weg ohne Dokumentation nicht möglich, etwas sinnvolles damit zu machen ...
Wenn es doch so einfach ist kann es doch auch kein Problem sein, eine kleine Doku dazu zu machen ...
Oder soll es ein Geheimnis für die Gurus bleiben damit man sie braucht???
Ich bin sicher nicht blöd und beschäftige mich schon seit Jahren erfolgreich mit TYPO3 (TypoScript hat auch seine Tücken) aber das hier ist mir zu undurchsichtig ...  :-\
Deshalb bitte den Thread hier abschließen, trotzdem danke für die Mühe mit mir.

Αndré

Ich hab langsam das Gefühl, dass du einfach zu faul bist um dir helfen zu lassen, "Meister".

Beiträge wie
Quote from: cgc-11 on January 10, 2009, 04:38:50 PM
Ich gebs jetzt auf, habe ich eben keine Zusatzseiten ...
Quote from: cgc-11 on January 12, 2009, 10:40:19 PM
Was solls - schade nur, denn diese Super-Erweiterung für das System wäre so wertvoll, aber wenn es nur Eingeweihten möglich ist etwas damit zu machen finde ich sie sinnlos.
...
Oder soll es ein Geheimnis für die Gurus bleiben damit man sie braucht???
motivieren uns nicht gerade Personen bei ihrem Problemen weiterzuhelfen, zumal ich dir die Lösung nun schon in den Mund gelegt habe: klick

Ein Link zu deiner Seite wäre übrigens auch sehr hilfreich.

Im minicms-Paket existiert sogar eine Datei "README", in der ganz am Ende auch folgender Abschnitt steht:
Quote* You can include any article in its own page to be used as a hyperlink by using
  it's ID i.e.: http://www.donovanbray.com/index.php?file=minicms/cms&id=13
Die ID von einem geschriebenen Artikel findest du heraus, indem du den Link "MiniCMS Admin" im Adminmenü folgst und den gewünschten Artikel anklickst. In der Adressleiste erscheint dann der Link zu dem Artikel, den du einfach nur noch als Eintrag in dein Menü einbinden musst.

War das jetzt auch für nicht-Gurus verständlich? Ich komm mir nämlich langsam verarscht vor >:(