вывод категорий + заглавные буквы

admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: вывод категорий + заглавные буквы

Post by admin »

Я сейчас кстати посмотрел и еще б
ob_start();
убрал и просто сразу делал не echo, а сохранял бы в переменную.
потому что сам темпелйт так же выполняется через ob_start(); - как бы в будущем в пхп не было конфликтов по этому поводу.
Don't forget to run script update
SAS
Posts: 65
Joined: Fri Jul 29, 2016 7:23 pm

Re: вывод категорий + заглавные буквы

Post by SAS »

admin wrote:Я сейчас кстати посмотрел и еще б
ob_start();
убрал и просто сразу делал не echo, а сохранял бы в переменную.
потому что сам темпелйт так же выполняется через ob_start(); - как бы в будущем в пхп не было конфликтов по этому поводу.
просто удалить ob_start(); не проблема

насчет echo не совсем понял

можете на этом коде показать как Вы считаете будет правильно?

Code: Select all

<ul>
<?php
$c_key = $_GET['force_lng'].'_ctg_abc_block';
if (!empty($GLOBALS['categories_abc'])) {
		// попробуем достать кешированный блок. Ключ хранения в кеше: ctg_abc_block. Можно добавить префикс, чтоб кеш не пересекался с другими сайтами.
	if (!$category_block = Cache::get($c_key)) {
		ob_start();
		$lastFirstLetter = '';

		foreach($GLOBALS['categories_abc'] as $_category) {
		    $currentFirstLetter = strtolower($_category['category_name'][0]);

		    	// Выводится буква в верхнем регистре (функция ucfirst делает это)
		    if ($currentFirstLetter != $lastFirstLetter) {
		        echo '<li><span>' . ucfirst($currentFirstLetter) . '</span></li>'; // это сам шаб для буквы
		    }

		    	// Это ссылка на категорию, предполагается что category_custom_name это слаг категории, а category_name соответственно ее имя.
		    echo '<li><a href="/' . $_category['category_custom_name'] . '/">' . (ucfirst(strtolower($_category['category_name']))) .'</a></li>';
		    $lastFirstLetter = $currentFirstLetter;
		}

	    $category_block = ob_get_clean();
	    Cache::set($c_key, $category_block, 3600); // кешируем блок на час, 3600 сек.
	}

	echo $category_block;
}
?>
</ul>
т.е. переделать его по вашим соображениям и выложить сюда?! :roll:

да и ответа на свой $c_key я так и не получил) правильно я делал?
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: вывод категорий + заглавные буквы

Post by admin »

Да, что-то такое я бы и менял, но конечно надо тестировать.
Don't forget to run script update
Post Reply