- Hivatalos a OnePlus 13 startdátuma
- Leminősítik az S26 Ultra zoomkameráját
- Samsung Galaxy S25 - végre van kicsi!
- Youtube Android alkalmazás alternatívák reklámszűréssel / videók letöltése
- Xiaomi 15 - kicsi telefon nagy energiával
- MIUI / HyperOS topik
- Telekom T Phone 3 5G – modern tudakozó
- Google Pixel topik
- Nonjour: nem fordít az EU-ban az AirPods
- Google Pixel 9a - a lapos munka
-
Mobilarena
WordPress tartalom kezelő rendszer (CMS) topik
Új hozzászólás Aktív témák
-
lalimano
tag
Sziasztok!
Hobbiszinten ismerkedem a Wordpressel, és arra gondoltam jó lenne ha az oldal látogatói rendezhetnék különböző szempontok szerint a bejegyzéseket.
Erre találtam is egy plugint, ami tökéletes kiindulási alap: [WP Sort Posts], sikerült is annyival kieészítenem, hogy postok száma szerint csökkenő sorrendbe is tudjon rendezni:
<?php
/*
Plugin Name: WP Sort Posts
Plugin URI: http://sitehint.ru/?p=757
Description:
Version: 1.0
Author: TrueFalse
Author URI: http://red-book-cms.ru
License: GPLv2 or later
Text Domain: wpsp
Domain Path: /languages
*/
# Загрузка строк локализации:
load_plugin_textdomain('wpsp', false, dirname( plugin_basename( __FILE__ ) ). '/languages/');
# Сортировка записей:
function wpsp_orderby_posts($vars) {
$params = wpsp_get_orderby_select();
$vars->set('orderby', $params['orderby']);
$vars->set('order', $params['order']);
$vars->set('ignore_sticky_posts', 1);
return $vars;
}
add_filter('pre_get_posts', 'wpsp_orderby_posts');
# Обрабатываем POST с выпадающего списка:
function wpsp_get_orderby_select() {
$result = array(
'1' => ' selected="selected"',
'2' => '',
'3' => '',
'4' => '',
'5' => '',
'orderby' => 'date',
'order' => 'DESC'
);
if (intval($_GET['wpsp_orderby_posts']))
switch ($_GET['wpsp_orderby_posts']) {
case '1': // Сортировать по заголовку:
$result['orderby'] = "title";
$result['order'] = "ASC";
break;
case '2': // Сортировать по дате: сначала новые:
$result['orderby'] = "date";
$result['order'] = "DESC";
$result['2'] = ' selected="selected"';
$result['1'] = '';
break;
case '3': // Сортировать по дате: сначала старые:
$result['orderby'] = "date";
$result['order'] = "ASC";
$result['3'] = ' selected="selected"';
$result['1'] = '';
break;
case '4': // Сортировать по дате последней правки:
$result['order'] = "modified";
$result['4'] = ' selected="selected"';
$result['1'] = '';
break;
case '5':
$result['orderby'] = "comment_count";
$result['order'] = "DESC";
$result['5'] = ' selected="selected"';
$result['1'] = '';
break;
}
return $result;
}
add_filter('wp_head', 'wpsp_get_orderby_select');
# Вывод формы на экран:
function wpsp_orderby_posts_form() {
$params = wpsp_get_orderby_select();
echo "
<form method=\"get\" id=\"order\">". __('Sort posts', 'wpsp'). "
<select name=\"wpsp_orderby_posts\" onchange=\"this.form.submit()\">
<option value=\"1\"{$params['1']}>". __('by title', 'wpsp'). "</option>
<option value=\"2\"{$params['2']}>". __('by date (new forward)', 'wpsp'). "</option>
<option value=\"3\"{$params['3']}>". __('by date (old onwards)', 'wpsp'). "</option>
<option value=\"4\"{$params['4']}>". __('by date modified', 'wpsp'). "</option>
<option value=\"5\"{$params['5']}>". __('by comments', 'wpsp'). "</option>
</select>
</form>";
}
?>
Viszont a Facebookos kommentrendszert használnám, hogy ne fogyasszam a tárhelyet a kommentekk tárolásával.Tehát röviden: Azt szeretném megvalósítani, hogy az adatbázisban a post adatai mellett legyen egy külön mező (vagy ezt külön táblában kéne, hogy a plugin eltávolítható legyen?) , ami egy számot tárol, és növeli, ha az adott posthoz hozzászólnak (vagy lekéri a facebookos adatbázisból, de csak akkor frissítse, ha kommentel valaki, ne mindig mikor betöltik a konkrét bejegyzést)
Későbbi terv, hogy ha valaki Likeolja, +1-eli vagy megosztja valami közösségi oldalon (az oldalra kihelyezett gombokkal), akkor növel egy számlálót, és ez szerint is lehessen rendezni.
Ezekben tudna valaki segíteni? Elég kezdő vagyok, ami tutorialokat találtam, nem sikerült azok alapján :/
Előre is köszi!
Új hozzászólás Aktív témák
- Vallás
- AMD vs. INTEL vs. NVIDIA
- HiFi műszaki szemmel - sztereó hangrendszerek
- A fociról könnyedén, egy baráti társaságban
- Hivatalos a OnePlus 13 startdátuma
- Windows 11
- Óvodások homokozója
- Nvidia GPU-k jövője - amit tudni vélünk
- Leminősítik az S26 Ultra zoomkameráját
- Horgász topik
- További aktív témák...
- BESZÁMÍTÁS! Intel Core i7 6700K 4mag 8szál processzor garanciával hibátlan működéssel
- BESZÁMÍTÁS! ASUS A620M R5 7500F 32GB DDR5 1TB SSD RTX 4070 SUPER 12GB Zalman M4 Corsair 650W
- BESZÁMÍTÁS! MSI B450 R5 5500 16GB DDR4 512GB SSD 1TB HDD GTX 1060 6GB Zalman N5 MF ADATA 600W
- GYÖNYÖRŰ iPhone 14 Pro Max 256GB Deep Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS3419
- HP EliteBook 840 G7 i5-10210U 16GB 256GB 1 év garancia
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest