Ответы пользователя по тегу PHP
  • Как придумать логику для вывода пользователей?

    @MrTimon
    Вопрос очень обширный. Могу посоветовать Вам почитать про MVC (Model-View-Controller). Если вкратце то Вам нужно иметь Модель юзера (клас), Модель для Коллекции юзеров, Темплиты для каждого выводимого варианта шаблона и пхп файл который будет направлять инфу про юзеров в шаблоны и выводить результат.
    Тоисть запросы приходят на контролер (index.php к примеру). В нем разбираете урл и определяете какую вюшку (тоисть какой темплит) нужно загружать. Потом создаете объект класса с юзерами и передаете полученый массив юзеров у вюшку а полученый результат выводите на екран.
    Тут достаточно неплохо описан принцип. Надеюсь это Вам поможет.
    Ответ написан
    Комментировать
  • Вывод дочерних страниц 1го уровня с миниатюрами - что не так?

    @MrTimon
    Я думаю проблема в том что у ВП нету ф-ции has_post_custom_meta, насколько я знаю. А 500 ошибку вам выдает потому что сервер так настроен скорее всего. Предлагаю этот кусок кода
    <?php if(has_post_custom_meta('Desc')) : ?>
                <div class="child_page_desc">
                    <?php echo get_post_meta($post->ID, 'Desc', true); ?>
                </div>
    <?php endif; ?>


    заменить на следующий

    <?php $desc = get_post_meta(get_the_ID(), 'Desc', true); ?>
    <?php if(!empty($desc)) : ?>
                <div class="child_page_desc">
                    <?php echo $desc;?>
                </div>
    <?php endif; ?>
    Ответ написан
    5 комментариев
  • Как по-проще вывести похожие страницы на статичном сайте?

    @MrTimon
    хорошо бы сделать $group1, $group2 ... $groupN тоже массивом. и тогда простым перебором. Допустим имеем

    $groups[] = array(1 => 'морковка',5 => 'капуста',7 => 'картошка');
    $groups[] = array(100 => 'собака',200 => 'кошка',300 => 'мышка');
    $groups[] = array(1000 => 'клавиатура',2000 => 'системник',3000 => 'монитор');
    ...
    $groups[] = array(10000 => 'лаванда',20000 => 'ромашка',30000 => 'роза');
    $id = 300;
    
    		foreach($groups as $group) {
    			if (array_key_exists($id,$group)) {
    				$similar_pages = '';
    				foreach ($group as $key=>$item) {
    					if ($key == $id ) continue;
    					$similar_pages .= sprintf('<а href="page.php?id=%d">%s< /а> ', $key, $item);
    				}
    				break;
    			}
    		}
    
    		print ($similar_pages);
    Ответ написан
    1 комментарий