Üdv!
Olyan lehetőséget keresek - és ebben kérnék segítséget - hogy hogyan lehet egy bejegyzéshez több dátumot kapcsolni. Ãgy elsőnek hülyeségnek tűnik, de részletezem:
Egy filmes blogot szeretnék csinálni, ahol egy-egy bejegyzés egy-egy film ismertetőjét képezné. Ebben szerepelne olyan is, hogy pl. a bemutató dátuma(!). -> Igen, egyszerű esetben csak bele kéne írnom a bejegyzésbe, de én nem akarom egyszerűen, mert azt is megszeretném majd oldani, hogy a bejegyzéseket, azaz a filmeket a bemutató dátuma szerint rendezze a főoldalon, vagy bárhol. Ezt válaszható opcióként szeretném használni majd és gondolom kell hozzá plugin is és akkor viszont több szempont szerint lehetne őket rendezni pl. magyar bemutató, külföldi bemutató, stb…
Ötletek? Köszönöm!
1 - saját mezőbe vedd fel a dátumokat (Y.m.d. H:i), pl “datumX” névvel, ahol X a sorszám, már ha többet akarsz felvenni!
2 - a “datumX” értéket ott listáztatod ki a bejegyzésed mellett, ahol akarod, ehhez a sablonodat kell szerkesztened, és a codexben benne van hogy hogy lehet előcsalni egy ilyen értéket.
3 - én ezt a kódot használom a naptáramban, mozipremierekhez is jól jöhet, mert csak a premier napjáig van jelen a listában:
=&meta_value=' . $todaysDate . '&orderby=meta_value&order=ASC'); ?>
- <a href="">
ID, 'datumX', true); ?>
- Nincs...
Köszönöm, ez jó ötletnek tűnik/tűnhet.
nincsenek rossz ötleteim
A főoldal tökéletesen működik, sikerült testre szabnom, így a bejegyzések nem a publikálás dátuma szerint, hanem a premier dátuma szerint rendeződnek.
Most már csak egy jó és egyszerű visszaszámláló script kéne, amibe bele lehetne helyezni az alábbi kódoz, így visszaszámolna a premier napjáig. (Ez csak a bejegyzésnél lenne látható, a főoldalon nem!)
(Példa: "Még X hónap, X nap van hátra a magyar premierig!" Ha a premier már megtörtént, azaz lejárt a visszaszámlálás, akkor csak a bemutató dátumát írná ki: "Magyar premier 2010.XX.XX.")
http://wordpress.org/extend/plugins/simple-count-down/
http://wordpress.org/extend/plugins/countdown-timer/
ezt még a kugli is tudja!
Nem ilyenre gondoltam, viszont találtam egy jót, ami működhet is. JavaScript Countdown
Egyetlen egy probléma van vele, mégpedig az, hogy a dátumot a következő formában fogadja el: 12/31/2020
Nekem viszont csak így lenne jó: 2020.12.31.
Nincs rá megoldás? Köszönöm!
megnéztem volna a linket, de nekem ezt irja:
If interested, you may contact the site admin to inquire about this restriction.
Érdekes, nekem most is bejön, de akkor bemásolom ide countdown.js-t:
Author: Robert Hashemian
http://www.hashemian.com/
You can use this code in any manner so long as the author's
name, Web address and this disclaimer is kept intact.
********************************************************
Usage Sample:
TargetDate = "12/31/2020 5:00 AM";
BackColor = "palegreen";
ForeColor = "navy";
CountActive = true;
CountStepper = -1;
LeadingZero = true;
DisplayFormat = "%%D%% Days, %%H%% Hours, %%M%% Minutes, %%S%% Seconds.";
FinishMessage = "It is finally here!";
*/
function calcage(secs, num1, num2) {
s = ((Math.floor(secs/num1))%num2).toString();
if (LeadingZero && s.length < 2)
s = "0" + s;
return "" + s + "";
}
function CountBack(secs) {
if (secs < 0) {
document.getElementById("cntdwn").innerHTML = FinishMessage;
return;
}
DisplayStr = DisplayFormat.replace(/%%D%%/g, calcage(secs,86400,100000));
DisplayStr = DisplayStr.replace(/%%H%%/g, calcage(secs,3600,24));
DisplayStr = DisplayStr.replace(/%%M%%/g, calcage(secs,60,60));
DisplayStr = DisplayStr.replace(/%%S%%/g, calcage(secs,1,60));
document.getElementById("cntdwn").innerHTML = DisplayStr;
if (CountActive)
setTimeout("CountBack(" + (secs+CountStepper) + ")", SetTimeOutPeriod);
}
function putspan(backcolor, forecolor) {
document.write("<span id='cntdwn' style='background-color:" + backcolor +
"; color:" + forecolor + "'>");
}
if (typeof(BackColor)=="undefined")
BackColor = "white";
if (typeof(ForeColor)=="undefined")
ForeColor= "black";
if (typeof(TargetDate)=="undefined")
TargetDate = "12/31/2020 5:00 AM";
if (typeof(DisplayFormat)=="undefined")
DisplayFormat = "%%D%% Days, %%H%% Hours, %%M%% Minutes, %%S%% Seconds.";
if (typeof(CountActive)=="undefined")
CountActive = true;
if (typeof(FinishMessage)=="undefined")
FinishMessage = "";
if (typeof(CountStepper)!="number")
CountStepper = -1;
if (typeof(LeadingZero)=="undefined")
LeadingZero = true;
CountStepper = Math.ceil(CountStepper);
if (CountStepper == 0)
CountActive = false;
var SetTimeOutPeriod = (Math.abs(CountStepper)-1)*1000 + 990;
putspan(BackColor, ForeColor);
var dthen = new Date(TargetDate);
var dnow = new Date();
if(CountStepper>0)
ddiff = new Date(dnow-dthen);
else
ddiff = new Date(dthen-dnow);
gsecs = Math.floor(ddiff.valueOf()/1000);
CountBack(gsecs);
pedig én is ezt http://wordpress.org/extend/plugins/countdown-timer/ használom erre a célra, mindent tud.
Sikerült! Igaz egy másik script-tel, de így már tökéletes! Dynamic Countdown Script
Köszönöm a segítségeket!
Még egy dolog.
A főoldalon egy tök jó módon, stílusban jeleníti meg az alábbi kód a bejegyzés dátumát. Csakhogy nekem még mindig a premier dátuma kéne - ide is. Ezt meglehet valahogy valósítani?
if( $postDate != $previousPostDate || $i == 1 ) {
$previousPostDate = $postDate;
echo '
}
?>
Ez meg a premier dátumát jeleníti meg ilyen formában: July 13, 2010 (Mert így működik a sorba rendezés és a visszaszámlálás.)
Sikerült, úgy hogy tárgytalan.
de nem sikerült…, te ha olvasod ezt a fórumot, mit látsz? mindenki azt írta, sikerült? és abból mit tanulnál?
Mindenki idejön segítségért, amikor máshogy sikerült neki, visszajön, és csak annyit nyög: kösz skacok, de már megoldottam.
bocs, a helyes formátum az egyedi mezőben: ÉÉÉÉ/HH/NN
ezzel működi a sorba rendezés és a visszaszámlálás is
----
a premier szerinti sorba rendezés kiválóan működik, viszont, ha egy nap van pl. 10 premier, akkor azt a 10-et a bejegyzés írásának időpontja szerint rendezi sorba. azt meglehel oldani, hogy itt az ABC szerint legyen a rendezés?