Alles klar! Herzlichen Dank Dir!
Beiträge von SpreadWideWings
-
-
Hallo WP-Gemeinde,
wie ist der saubere Weg, wenn ich css Styles in einem Plugin verändern möchte. Beispielsweise möchte ich einen andere Farbe des senden Buttons im Plugin Contact Form 7 haben.
Ich würde nun Änderungen in der style.css vornehmen...... ist das der richtige Weg?
Viele Grüße und herzlichen Dank!
-
Liebe WP-Gemeinde,
ich versuche für mein Plugin ein Template zu erstellen, da ich etwas präsentieren möchte verschwimmen die Grenzen zwischen Plugin und Theme etwas -dessen bin ich mir bewusst.
Wenn ich das erstellte Theme unter Design im Backend aufrufe tut es genau dass was ich möchte.
Speicher ich es im Plugin Ordner ab nicht. Dann wird das erstellte Theme scheinbar nicht als solches erkannt. Mittels require( dirname( __FILE__ ) . '/../../../../wp-blog-header.php' );
importiere ich dann die benötigten WP-Funktionen. Weiterhin wird mittel get_Header nicht die erstellte Header-Datei aufgerufen, sondern die vom verwendeten WP-Theme.Nun habe ich folgende Fragen:
- kann ich templates überhaupt im Plugin-Ordner speichern?
- wenn obiges geht, wie teile ich WP mit, dass es sich hierbei um ein WP Theme handelt.
- Wie rufe ich meine erstellte Header-Datei auf?Ich freue mich auf Antworten :)
-
Für Templates gibt es ebenfalls entspr. Dokumentation. Etwas Grundwissen sollte man sich schon aneignen, bevor man tiefgreifende Eingriffe in WordPress vornehmen will.
Aha. Und meinst du nicht, dass es etwas viel Arbeit ist. Wo ich doch diese Funktion habe, die dann auch noch macht was ich möchte? Ist es dann wirklich die Lösung ein Template für eine Seite zu basteln?
function check_access(){
session_start();
if( $_SESSION['login'] != "ok" ){
echo '
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Login_Design</title>
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jque…3/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.…otstrap.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.…p-theme.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.…ootstrap.min.js"></script>
<style>
#hint{
visibility: hidden;
margin-top: 10em;
}
body{
background-color: white;
}
</style>
</head>
<body>
<div class= "container">
<div class="alert alert-danger" role="alert" id="hint">Login war nicht erfolgreich. Überprüfen Sie Benutzernamen und Passwort.
</div>
<form class="form-horizontal" id ="main" method = "post" >
<div class="form-group">
<label for="eingabefeldEmail3" class="col-sm-2 control-label">Benutzername</label>
<div class="col-sm-10">
<input type="text" class="form-control" name ="mail" id="eingabefeldEmail3" placeholder="Benutzername">
</div>
</div>
<div class="form-group">
<label for="eingabefeldPasswort3" class="col-sm-2 control-label">Passwort</label>
<div class="col-sm-10">
<input type="password" name ="pw" class="form-control" id="eingabefeldPasswort3" placeholder="Passwort">
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<input type="submit" name="Submit" class="btn btn-default">
</div>
</div>
</form>
</div>
</body>
</html>
';
if (isset($_POST['Submit'])){$name = isset($_POST['mail']) && is_string($_POST['mail']) ? $_POST['mail']: "false";
$pw = isset($_POST['pw']) && is_string($_POST['pw']) ?$_POST['pw']: "false";
$login = false;
$args = array('post_type' => "login");
$query = new WP_Query($args);
while ($query -> have_posts()) : $query -> the_post();
if(get_field('name') == $name && get_field('pw' ) == $pw ){
$login = true;
}
endwhile;
if ($login == true){
$_SESSION['login'] = 'ok';
echo (" <meta http-equiv="refresh" content="1; URL=http://example.de/wp ">
");
}else{
echo ("<script types="text/javascript"> \n
$("#hint").css("visibility","visible");
</script>");
}
}
exit;
}
}
-
Das ist weniger kryptisch. Dann bleibe halt die Frage wie ich mir ein eigenes Template bastel. Kannst du mir da einen hint geben?
-
Wie man das löst, wurde ebenfalls bereits beschrieben.
sorry, kannst du mir auf die Sprünge helfen? Ich komme mit deinen kryptischen Antworten nicht weiter...
...ich bin mir nicht sicher ob ich für den wp_redirect eine eigene statische Seite bauen muss. Mir fehlt da einfach der Überblick ;( Und wenn ich die baue, wie ich die in mein Wordpress Plugin einbinden kann.
-
Das hast Du bereits geschrieben. Ich finde aber keinen anderen passenden Hook, der einsetzt bevor die Seite angezeigt wird. Hast du da einen Vorschlag?
-
Hallo Gemeinde,
ich bastel weiterhin an einem Plugin.
Ich hacke mich bei template_redirect ein und gebe dann folgenden Code aus:
</style>
</head>
<body>
<div class= "container">
<div class="alert alert-danger" role="alert" id="hint">Login war nicht erfolgreich. Überprüfen Sie Benutzernamen und Passwort.
</div>
<form class="form-horizontal" id ="main" method = "post" >
<div class="form-group">
<label for="eingabefeldEmail3" class="col-sm-2 control-label">Benutzername</label>
<div class="col-sm-10">
<input type="text" class="form-control" name ="mail" id="eingabefeldEmail3" placeholder="Benutzername">
</div>
</div>
<div class="form-group">
<label for="eingabefeldPasswort3" class="col-sm-2 control-label">Passwort</label>
<div class="col-sm-10">
<input type="password" name ="pw" class="form-control" id="eingabefeldPasswort3" placeholder="Passwort">
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<input type="submit" name="Submit" class="btn btn-default">
</div>
</div>
</form>
</div>
</body>
</html>Nun möchte ich eine eigene Datei für CSS haben. Diese binde ich folgendermaßen ein:
add_action('wp_enqueue_scripts', 'public_scripts');function public_scripts(){
if (wp_register_style('login_plugin', plugins_url('/public/css/login_plugin.css'))){
echo 'ist registriert';
}
wp_enqueue_style('login_plugin');
}Jetzt meine Frage. Es ist alles registriert, aber wie ist der obigen HTML Ausgabe bekannt, dass eine CSS Datei vorliegt?
Die manuell einfügen ist glaube ich nicht der WP Weg, oder?Kann mir jemand Helfen einen Überblick zu bekommen?
VG und lieben Dank
-
Würde vorschlagen, Du beschäftigst Dich erstmal etwas grundsätzlicher mit WordPress Ajax. Der gezeigte Ansatz kann und wird so nicht funktionieren. Die Action [FONT=courier new]template_redirect[/FONT] ist zudem nicht für die Ausgabe von Code ins Frontend vorgesehen.
Mich mit Ajax zu beschäftigen steht ganz oben auf meiner Liste. Welchen Hook schlägst du vor? Bisher habe ich keinen besseren gefunden. Ich möchte nämlich nicht, dass aufgerufene Wordpress-Seite sichtbar ist, bevor meine Funktion check_access abgearbeitet wurde.
Herzlichen Dank und viele Grüße
-
Das ist kein Ajax-Aufruf sondern ein normaler Post-Request.
Mehr zum Thema z.B. hier in einem Beispiel oder im WordPress Codex.
Ok ich raff nix und habe keine Idee wo ich ansetzen soll. Folgender Code
add_action('template_redirect','check_access');
function check_access(){
if( $_SESSION['login'] != "ok" ){.....
<form class="form-horizontal" id ="main" method = "post" action ="/wp/wp-admin/admin-ajax.php?action=login" method ="post" >
....
}function login(){
}Wie bekomme ich es hin, dass die function login aufgerufen wird?
-
Hello zusammen,
Ich was ich da falsch mache. Aber die Funktion login wird nicht aufgerufen. Auf ein Submit erscheint nur eine leere Seite mit einer 0 oben links.
Wordpress ist bei mir unter /wp installiert, daher wegen der Pfadangabe bitte nicht wundern.<form class="form-horizontal" id ="main" method = "post" action ="/wp/wp-admin/admin-ajax.php?action=login" method ="post" >
Würde mich freuen, falls jemand helfen kann...
-
Dann hat Edi recht und die Frage hat mir WordPress nichts zu tun. Im Brackets Support wirst Du somit eher eine Antwort erhalten.
alles klar, sorry!
-
Der Syntax von PHP ist mir durchaus geläufig. Ich möchte nur in Brackets damit auch navigieren können.
Ich stelle mir das so vor: der Table of contents der Kommentare wird links in der Leiste angezeigt und ich kann darüber dann zur entsprechenden Stelle im Code navigieren. -
Moin,
leider kriege ich mein Plugin nicht so konfiguriert, dass eine Session-Key nur optional mit Cookie übertragen wird. Momentan funktioniert es nur mit Cookie, obwohl ich folgende Einstellungen vorgenommen habe:
ini_set ( 'session.use_cookies' , "1" );
ini_set ( 'session.use_only_cookies' , "0" );Hat jemand eine Idee?
Viele Grüße
SpreadWideWings -
den Zusammenhang sehe ich jetzt nicht ;)
-
Hallo zusammen,
ich nutze Brackets und würde gerne mein erstelltes php Files mit Kommentaren navigieren und strukturieren. Soll irgendwie so aussehen:
/* !0. TABLE OF CONTENTS */
/*
1. HOOKS
2. SHORTCODES
2.1 - slb_register_shortcodes()
2.2 - slb_form_shortcode()
2.3 - slb_manage_subscriptions_shortcode()
2.4 - slb_confirm_subscriptions_shortcode()
3. FILTERS
3.1 - slb_subscriber_column_headers()
.... usw.Ist das Möglich? Ich finde keine passenden Einstellungen dafür.
Viele Grüße
-
alles erledigt. Einzi obige Frage ist noch offen, warum der HTML Code nicht funtkioniert.
-
Wenn man einen redirect wie in der Dokumentation macht, kann das nicht sein.
Poste doch mal Deinen Code.
Genau dass habe ich auch festgestellt. Warum ist dies so? Von google kann die Seite so ja auch nicht gefunden werden oder? -
Hey, danke für Deine Hilfestellung. Lieder wird auch hier kurz der Content angezeigt.
Edit: funktioniert! Aber nur mit wp_redirect und nicht mit einem echo und dann HTML Code.
Warum ist das so?
Und nochmal Danke
-
Hallo liebe WP-Gemeinde,
ich schreibe, zum üben, ein Plugin. Ziel ist es das meine erstellen Wordpress-Seiten nur über ein vorheriges Login sichtbar werden.
Leider finde ich nicht den passenden Hook. Die von mir erstellen Seiten werden immer kurz dargestellt, bevor es zur Login-Seite weiter gereicht werden. Benutzt habe ich bisher folgende Hooks:*init
*muplugins_loadedEs würde mich riesig freuen, wenn mir jemand weiterhelfen könnte.
Viele Grüße