25.12.2007, 11:53
|
#1 (permalink)
| | PostRank: 4
Registriert seit: 25.12.2007
Beiträge: 250
| Post einer Template (plugin entwicklung?) Hallo, ich poste öfters eine php Seite, die immer die gleiche Struktur hat.
Darin werden zb, videos aufgelistet, die ich auf stage6 oder youtube gefunden habe.
Hier ein Beispiel: PHP-Code: <?php $beschreibung = "Langer Text"; $genre = "Adventure, Comedy, Family"; $quelle = "<a href='http://www.link.net/' target='_blank'>(Quelle)</a>";
$AnzahlDerThumbs = 3; $link1 = ; $link2 = ; $link3 = ;
//############################################################################################ echo "<p style='margin-bottom: 0cm'><font><strong><a href='http://animesubs.an.ohost.de/?page_id=170'><font color='#ff0000'><strong>Zum Index</strong></font></a></strong></font></p>"; echo "\n"; echo "<p style='margin-bottom: 0cm'><u><strong>Beschreibung:</strong></u>".$quelle; echo "\n"; echo $beschreibung; echo "\n"; echo "<p style='margin-bottom: 0cm'> <u><strong>Genre:</strong></u>"; echo "\n"; echo $genre; echo "\n"; echo "\n"; echo "<hr size='2' />";
for ($i=1; $i<=$AnzahlDerThumbs; $i++){
if($i<10){ echo "0"; } echo "<a href='http://video.stage6.com/".${"link".$i}."/.divx' target='_blank'>".$i."</a>"; echo ". <a href='http://animesubs.an.ohost.de/player.php?inhalt=http://video.stage6.com/".${"link".$i}."/.divx' target='_blank'><img src='http://images.stage6.com/video_images/".${"link".$i}."t.jpg' title='".$i."' alt='".$i."' height='120' width='214' /></a>"; echo "\t"; if($i%2 == 0) { echo "\n \n"; }
}
?> Nun habe ich mir überlegt, ob man das Posten irgendwie einfacher machen könnte. Ich möchte nicht immer den Code einfügen.
Ich habe mir überlegt ob man da nicht ein Plugin schreiben könnte.
In den Posting Optionen (unter visual) gibt es ja diese Option: "Insert/edit image". Wenn man drauf klickt öffnet sich ein kleines popup, in das man einige Werte eingibt und dann wird automatisch der Quellcode erstellt.
Ich würde gerne soetwas für den obigen Code erstellen. Es müssten die Felder beschreibung, genre und quelle enthalten sein und eine vordefinierte Anzahl von Feldern für die Videolinks.
Ich kenne mich nur leider nicht mit php aus und noch weniger mit plugins für Wordpress.
Ist eine Lösung für so ein Plugin sehr schwer? Wäre es möglich, dass mir jemand das Plugin bastelt? Oder gibt es ähnliche Plugins, die ich mir umbauen könnte? |
| |
25.12.2007, 13:07
|
#3 (permalink)
| | PostRank: 4
Registriert seit: 25.12.2007
Beiträge: 250
| Danke für deine Hilfe. Die Custom Fields scheinen ganz nützlich zu sein.
Ich habe noch nie mit damit gearbeitet. Gibt es ein ganz einfaches Tutorial auf Deutsch, das ungefähr Zeigt, was man damit machen kann?
Im Forum sehe ich nur, dass da viel Script im Spiel ist. Aber ich habe da nur zwei Felder wo ich irgendetwas eintragen kann. Die Felder sehen nicht aus als ob sie für lange Scripte gedacht wurden. Und ich weis leider auch nicht, was ich in welches Feld eintragen muss. |
| |
25.12.2007, 13:24
|
#4 (permalink)
| | WPD-Team
Registriert seit: 20.08.2005 Ort: Berlin
Beiträge: 15.767
| Man kann eine Menge damit machen. Schließlich kannst du die Benutzerdefinierten Felder ja schön mit PHP verwursten, sie abfragen, ausgeben, Abhängigkeiten damit erstellen usw.
Im Themepool hier nutzen wir die Benutzerdefinierten Felder für die ganzen Autordaten. Zitat: |
Aber ich habe da nur zwei Felder wo ich irgendetwas eintragen kann
| Richtig, Schlüssel und Wert. Aber deshalb hab ich ja das Plugin "Custom Field GUI" empfohlen. Damit wird die Sache etwas übersichtlicher und anpassbar.
Und du kannst ja mehrere Schlüssel erstellen...
Außerdem sollst du ja garnicht das ganze Script jeweils reinschreiben. Macht ja keinen Sinn.
So machst du z.B. nur einen Schlüssel Genre, in das du dann nur das Genre einträgst.
Die Ausgabe mit dem Plugin Get Custom Fields Value könnte dann so aussehen: PHP-Code: echo "<p style='margin-bottom: 0cm'> <u><strong>Genre:</strong></u>";
echo "\n";
echo c2c_get_custom('genre');
echo "\n";
echo "\n";
Du schreibst also die ganze Ausgabe direkt in das Theme und nicht in den Beitrag.
Spiele ruhig mal ein bisschen rum um Funktionsweise und Möglichkeiten zu verstehen. |
| |
25.12.2007, 15:00
|
#5 (permalink)
| | PostRank: 4
Registriert seit: 25.12.2007
Beiträge: 250
| Danke, die Option ist sehr mächtig, wenn sie php untertützt. Wie rufe ich das eigentlich in meinem Post ab? Wenn ich für Genre einen Wert einsetzen möchte. Und wie lösche ich die Custom Field wieder. Es sind jetzt einige in meinem Drop - Down Menü eingetragen. |
| |
25.12.2007, 15:06
|
#6 (permalink)
| | WPD-Team
Registriert seit: 20.08.2005 Ort: Berlin
Beiträge: 15.767
| Zitat: |
Wie rufe ich das eigentlich in meinem Post ab?
| Erklärte ich ja bereits in Ansätzen...du schreibst das eben direkt ins Theme/Template rein, da wo du es haben willst. Also vermutlich direkt in der Nähe von the_content.
Zum Abruf empfehle ich das bereits (in den verlinkten Threads) genannte Get Custom Fields Values. |
| |
25.12.2007, 15:19
|
#7 (permalink)
| | PostRank: 4
Registriert seit: 25.12.2007
Beiträge: 250
| Sind custom fields eigentlich sowas wie eine Erweiterung der Administrations Optionen? Ich dachte, dass man damit vordefinierte Templates erzeugt und im Post einfach nur Verweise darauf einträgt, also soetwas wie Funktionsaufrufe.
Das Editieren der Template würde für mich dann einen Sinn ergeben.
Geändert von dummy (25.12.2007 um 15:21 Uhr).
|
| |
25.12.2007, 15:48
|
#8 (permalink)
| | WPD-Team
Registriert seit: 20.08.2005 Ort: Berlin
Beiträge: 15.767
| Zitat: |
Sind custom fields eigentlich sowas wie eine Erweiterung der Administrations Optionen?
| Nein. Vergleiche sie mit dem Beitrags- oder Titelfeld eines Beitrages. |
| |
26.12.2007, 12:58
|
#9 (permalink)
| | PostRank: 4
Registriert seit: 25.12.2007
Beiträge: 250
| danke, hab es fast hinbekommen 
Geändert von dummy (26.12.2007 um 13:58 Uhr).
|
| |
06.01.2008, 10:31
|
#10 (permalink)
| | PostRank: 4
Registriert seit: 25.12.2007
Beiträge: 250
| Hallo, ich versuche seid einer Woche, dass meine Felder überall richtig angezeigt werden. Ich krieg es einfach nicht hin.
Sobald ich auf comments klicke sehe ich die Felder nicht mehr. Alle Seiten, die mit ?p=xyz geöffnet werden zeigen die Felder nicht an. Das ist ach ein Problem, wenn diese Seiten in Google geöffnet werden, weil dann einfach nur eine Seite ohne Inhalt erscheint, bzw. nur der Inhalt des Beitrags ohne die Felder. Hat niemand eine Idee woran das liegt..
Meine cf Datei:
cf.php PHP-Code: <?php if (!c2c_get_custom('genre', '') == '') { echo "<p style='margin-bottom: 0cm'> <u><strong>Genre:</strong></u></p>"; echo "\n"; echo c2c_get_custom('genre', ''); echo "\n"; } ?> index.php der Template: PHP-Code:
<?php ob_start(); ?>
<?php get_header(); ?>
<div id="content"> <!-- pages --> <?php if (is_page() and ($notfound != '1')) : ?> <?php while (have_posts()) : the_post(); ?> <div class="post" id="post-<?php the_ID(); ?>"> <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php _e('Read',TEMPLATE_DOMAIN); ?> <?php the_title(); ?>"><?php the_title(); ?></a></h2> <div class="entry"> <?php the_content('<span class="readmore">'.__('Read the rest of this entry »',TEMPLATE_DOMAIN).'</span>'); ?> <?php include ( TEMPLATEPATH . "/cf.php"); ?> </div> </div> <?php if ($user_ID) : ?> <h3><?php _e('Actions',TEMPLATE_DOMAIN); ?></h3> <ul class="postmetadata"> <li class="with_icon"><img class="icon" src="<?php echo get_bloginfo('stylesheet_directory') ?>/images/icons/edit-icon-16x16.gif" alt="edit" /> <?php edit_post_link(__('Edit',TEMPLATE_DOMAIN),'',''); ?></li> </ul> <?php endif; ?> <?php comments_template(); ?> <?php endwhile; ?> <!-- blog --> <?php elseif (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> <div class="post" id="post-<?php the_ID(); ?>"> <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php _e('Read',TEMPLATE_DOMAIN); ?> <?php the_title(); ?>"><?php the_title(); ?></a></h2> <small class="date"> <span class="date_day"><?php the_time(__('j',TEMPLATE_DOMAIN)) ?></span> <span class="date_month"><?php the_time(__('m',TEMPLATE_DOMAIN)) ?></span> <span class="date_year"><?php the_time(__('Y',TEMPLATE_DOMAIN)) ?></span> </small> <div class="entry"> <?php the_content('<span class="readmore">'.__('Read the rest of this entry »',TEMPLATE_DOMAIN).'</span>'); ?> <?php include ( TEMPLATEPATH . "/cf.php"); ?> </div> <?php edit_post_link(__('Edit',TEMPLATE_DOMAIN), '<small class="postmetadata">'.__('Edit',TEMPLATE_DOMAIN).' : ', '</small><br/>'); ?> <small class="postmetadata"><?php _e('Comments',TEMPLATE_DOMAIN); ?> : <?php comments_popup_link(__('No Comments »',TEMPLATE_DOMAIN), __('1 Comment »',TEMPLATE_DOMAIN), __('% Comments »',TEMPLATE_DOMAIN)); ?></small> <br/> <small class="postmetadata"><?php _e('Categories',TEMPLATE_DOMAIN); ?> : <?php the_category(', ') ?></small> <?php if(function_exists('the_bunny_tags')) : ?> <br/> <small class="postmetadata technorati_tags"> <?php the_bunny_tags('<span class="technorati_tags">Tags : </span>', '', ', '); ?> </small> <?php endif; ?> </div> <hr style="display:none;"/> <?php endwhile; ?>
<p class="navigation"> <span class="alignleft"><?php next_posts_link(__('« Previous Entries',TEMPLATE_DOMAIN)) ?></span> <span class="alignright"><?php previous_posts_link(__('Next Entries »',TEMPLATE_DOMAIN)) ?></span> </p> <!-- nothing found --> <?php else : ?> <div class="post" id="post-none"> <h2 class="center"><?php _e('Not found',TEMPLATE_DOMAIN); ?></h2> <p class="center"><?php _e("Sorry, but you are looking for something that is not here",TEMPLATE_DOMAIN); ?></p> <?php include (TEMPLATEPATH . "/searchform.php"); ?> </div> <?php endif; ?> <!-- homepage -->
<?php if(function_exists('yy_is_home')) : ?> <?php if(yy_get_lang()=="fr_FR") : ?> <?php if(yy_is_home()==true) : ?> <hr/> <?php if(function_exists('c2c_get_recent_posts')) : ?> <div class="highlight_box" id="post-last-works"> <h2><?php _e('Last works',TEMPLATE_DOMAIN); ?></h2> <ul> <?php c2c_get_recent_posts(3, '<li>%post_URL%<br />%post_excerpt_short%</li>', '5'); ?> </ul> </div> <?php endif; ?> <?php if(function_exists('c2c_get_recent_posts')) : ?> <div class="highlight_box" id="post-last-news"> <h2><?php _e('Last news',TEMPLATE_DOMAIN); ?></h2> <ul> <?php c2c_get_recent_posts(3, '<li>%post_URL%<br />%post_excerpt_short%</li>', '4 21'); ?> </ul> </div> <?php endif; ?> <?php endif; ?> <?php else : ?> <?php if(yy_is_home()) : ?> <hr/> <?php if(function_exists('c2c_get_recent_posts')) : ?> <div class="highlight_box" id="post-last-works"> <h2><?php _e('Last works',TEMPLATE_DOMAIN); ?></h2> <ul> <?php c2c_get_recent_posts(3, '<li>%post_URL%<br />%post_excerpt_short%</li>', '23'); ?> </ul> </div> <?php endif; ?> <?php if(function_exists('c2c_get_recent_posts')) : ?> <div class="highlight_box" id="post-last-news"> <h2><?php _e('Last news',TEMPLATE_DOMAIN); ?></h2> <ul> <?php c2c_get_recent_posts(3, '<li>%post_URL%<br />%post_excerpt_short%</li>', '9 24'); ?> </ul> </div> <?php endif; ?> <?php endif; ?> <?php endif; ?> <?php endif; ?> </div> <hr/> <!-- sidebar --> <?php get_sidebar(); ?>
<br style="clear:both" /><!-- without this little <br /> NS6 and IE5PC do not stretch the frame div down to encopass the content DIVs --> </div> <!-- footer --> <?php get_footer(); ?>
<? ob_end_flush();?> |
| | | Themen-Optionen | | | | Ansicht | Linear-Darstellung |
Forumregeln
| Es ist dir nicht erlaubt, neue Themen zu verfassen. Es ist dir nicht erlaubt, auf Beiträge zu antworten. Es ist dir nicht erlaubt, Anhänge hochzuladen. Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten. HTML-Code ist aus. | | | Alle Zeitangaben in WEZ +1. Es ist jetzt 08:59 Uhr. | |