뮤지컬 생일 카드. PHP 카테고리 (카테고리 트리) 국내 남성 카테고리 php cat id

오늘 우리의 목표는 범주의 계층 구조를 만드는 것입니다. 카테고리를 저장하는 것이 편리하고 필요한 곳에 표시하기 쉬운 것이 우리에게 중요합니다.

때로는 간단한 일이 복잡해 보이기도 합니다. 그래서 저는 트리 형태로 PHP 카테고리를 구현하는 데 도움이 될 몇 가지 코드 조각을 게시하겠습니다.

따라서 구조는 카테고리 ID(id), 카테고리 이름(name), 물론 상위 카테고리의 ID(parent_id)로 구성되어야 합니다. MySQL에서는 다음과 같습니다.

존재하지 않는 경우 테이블 생성 `category` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `parent_id` int(11) NOT NULL, PRIMARY KEY (`id`)) 엔진 =InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=0 ;

카테고리를 저장하기 위한 최소한의 명확한 테이블 구조입니다.

INSERT INTO `category` (`id`, `name`, `parent_id`) VALUES (1, "휴대전화 및 태블릿", "0"), (2, "자동차", "0"), (3, "Samsung" ", "1"), (4, "Apple", "1"), (5, "LG", "1"), (6, "Ford", "2"), (7, "Lexus", "2"), (8, "BMW", "2"), (9, "갤럭시 탭 4", "3"), (10, "갤럭시 S6", "3");

값 parent_id=0인 경우 이 카테고리에는 상위 카테고리가 없습니다.

여기의 모든 것은 명확하고 간단합니다. 이제 카테고리 목록을 표시해 보겠습니다. 그러나 목록을 올바르게 표시하려면 먼저 PHP 범주의 전체 목록을 가져온 다음 재귀를 사용하여 트리를 형성해야 합니다. 다음 함수는 이 목록을 가져오도록 설계되었습니다.

함수 get_cat() ( //데이터베이스 쿼리 $sql = "SELECT * FROM 카테고리"; $result = mysql_query($sql); if(!$result) ( return NULL; ) $arr_cat = array(); if( mysql_num_rows( $result) != 0) ( //루프에서 배열을 형성합니다. for($i = 0; $i< mysql_num_rows($result);$i++) { $row = mysql_fetch_array($result,MYSQL_ASSOC); //Формируем массив, где ключами являются адишники на родительские категории if(empty($arr_cat[$row["parent_id"]])) { $arr_cat[$row["parent_id"]] = array(); } $arr_cat[$row["parent_id"]] = $row; } //возвращаем массив return $arr_cat; } }

//디렉토리 배열을 가져옵니다. $result = get_cat();

이제 재귀 함수가 필요합니다.

함수 view_cat($arr,$parent_id = 0) ( //재귀 종료 조건 if(empty($arr[$parent_id])) ( return; ) echo "

    "; // 배열을 반복하고 화면에 표시합니다. for($i = 0; $i< count($arr[$parent_id]);$i++) { echo "
  • " .$arr[$parent_id][$i]["name"]."; //재귀 - 하위 카테고리가 있는지 확인 view_cat($arr,$arr[$parent_id][$i]["id" ] ); 에코 "
  • "; ) 에코 "
"; }

이제 남은 것은 재귀 함수를 사용하여 화면에 디렉터리를 표시하는 것입니다.

View_cat($결과);

그리고 일반적으로 그게 전부입니다. 이런 식으로 우리는 끝없는 하위 카테고리가 있는 완전한 카테고리 트리를 얻을 수 있습니다.

우리의 생일에 사랑하는 사람들은 즐거운 축하와 놀라움을 기대합니다. 주변의 모든 사람들은 그들을 축하하고, 관심을 갖고, 사랑과 보살핌을 표현하려고 노력하고 있습니다. 그러나 축하하는 사람들 사이에서 눈에 띄고 싶은 욕구는 항상 있습니다. 우리는 항상 그 사람이 우리에게 얼마나 소중한지를 특별한 방법으로 보여주고 싶습니다. 생일을 축하하는 훌륭한 현대적인 방법이 있습니다. 뮤지컬 카드는 훌륭한 생일 선물이 될 것입니다. 친구가 좋아할 만한 노래나 멜로디를 선택할 수 있습니다. 정확히 뮤지컬 생일 인사말 사랑하는 사람을 놀라게 하고, 좋은 기분을 선사하고, 생일을 더욱 즐겁게 보낼 수 있게 해줄 것입니다. Pozdravok 웹사이트에서는 모든 연령과 성별의 사람들을 위한 음악 카드를 선택할 수 있습니다. 우리는 생일 축하인사에게 즉시 보낼 수 있는 다양한 오디오 축하 메시지를 제공합니다. 생일 소년이 오랫동안 쾌활한 노래를 기억할 수 있도록하십시오. 그가 음악적 인사말을 가장 값비싼 선물로 소중히 여길 것이라는 데는 의심의 여지가 없습니다.
음악적 축하는 사랑하는 사람을 축하하는 훌륭한 옵션입니다. 생일날 사랑하는 사람으로부터 그런 독창적인 놀라움을 받는 것이 얼마나 좋은지 상상해 보십시오. 좋아하는 노래에 대한 시나 행사의 영웅의 전화로 전송될 만화 축하는 당신을 축하할 뿐만 아니라 하루 종일 긍정적인 에너지로 당신을 충전할 수 있습니다. 좋은 분위기는 흥미롭고 재미있는 생일 축하, 감동의 바다, 친구들과 오랫동안 기억할 즐거운 순간의 열쇠입니다. 사랑하는 사람에게 선물해보세요 휴대폰을 위한 뮤지컬 생일 카드 , 독창성과 창의적인 선물로 사랑하는 사람을 놀라게하고 기쁘게 해주세요.
생일은 행사의 주인공에게 모든 감정과 감정을 표현할 수있는 날입니다. 사랑하는 사람에게 부끄러워서 전할 수 없는 말, 생일 축하 인사를 오디오로 전할 수 있습니다. 그는 사랑하는 사람으로부터 그처럼 특이한 놀라움을 받게 되어 기쁘고 행복할 것입니다.

모든 블로그 독자들에게 인사드립니다. 워드프레스 인사이드 2011년, 다가오는 명절을 축하드리며, 앞으로 360일 동안 건강과 행복, 기쁨이 가득하시길 기원합니다. 다음 2011년 계획에 대한 기사에서 약속한 대로, 저는 시스템을 업데이트하고, 최신 버전의 플러그인을 설치하고, 최적화와 버그 수정을 위해 템플릿을 조사하는 등 모든 주요 블로그를 조금씩 개선하기 위해 노력하고 있습니다. 작업은 극도로 어려웠고 매우 힘들었다고 말하고 싶습니다. 하나의 부정확성을 발견하고 이를 수정하기로 결정하면 앞에는 수정이 필요한 5개의 개별 프로젝트가 있습니다. 글쎄, 나는 이미 이 모든 것을 할 계획을 세웠기 때문에 되돌릴 수 없으며 동시에 그 과정에서 추가 경험을 얻고 있으며 이미 새 블로그 게시물에 대한 약 5-6개의 주제를 찾았습니다. :) 오늘 우리는 카테고리와 이를 표시하는 기능.

이전 블로그 기사 중 하나에서 도움이 되는 해킹 방법을 게시했습니다. 이 솔루션은 wp_list_categories 함수를 사용하여 사이드바에 카테고리 목록을 표시하는 기능에 사용되었습니다. 출력은 다음과 같습니다.

안전

제목 속성이 SEO에 대해 최소한 어느 정도 의미가 있는 경우에는 불필요한 텍스트가 아닌 카테고리 이름을 여기에 배치하는 것이 훨씬 더 유용할 것입니다. 실제로 위의 해킹 링크가 이 문제를 해결하는 데 도움이 되었습니다. 하지만 여기에 문제가 있습니다. 이 모든 것이 에 대해 적용되었기 때문에 결과 목록을 즉시 표시하지 않고 사전 처리할 수 있었습니다. 하지만 카테고리를 표시하는 다른 기능은 어떻습니까? - 그게 문제입니다.

예를 들어, 오늘 저는 특정 게시물의 카테고리 목록을 표시할 때 링크의 제목 속성에 불필요한 텍스트가 잔뜩 쓰여 있는 것을 우연히 발견했습니다.

문제는 그것이 여기서 사용된다는 것입니다. the_category 함수, 안타깝게도 호출 결과가 즉시 표시되지 않도록 매개변수를 설정할 수 없습니다. 하지만 WordPress에는 특정 게시물에 대한 카테고리 개체 배열을 반환하는 get_the_category라는 또 다른 함수가 있습니다.

get_the_category 함수

get_the_category 함수의 구문은 매우 간단합니다.

고양이_이름; ?>

프로그래머는 배열의 0 매개변수가 첫 번째 요소를 출력한다는 것을 알고 있으며 이는 실제로 이 코드가 작동하는 방식을 설명합니다.

ID); var_dump($categories); ?>

ID); var_dump($categories); ?>

이렇게 하려면 게시물 ID를 매개변수로 함수에 전달해야 하며, 이는 코드에서 발생합니다.

그건 그렇고, 일부 사이트에서는 게시물 카테고리의 이름을 표시하기 위해 이 기능을 사용하지만 활성 링크가 없으면 페이지에 추가로 유용한 텍스트만 표시됩니다. 이 경우 다음 코드를 사용할 수 있습니다.

고양이_이름 . " " ; ) ?>

고양이_이름 . " "; ) ?>

그리고 마침내 우리는 약간의 고민 끝에 the_category 함수를 사용하지 않고 게시물의 카테고리 목록을 표시하는 방법을 생각해 냈습니다. 이 함수는 get_the_category로 성공적으로 대체되었습니다. 템플릿에서 카테고리가 표시되는 위치(예: archive.php 파일)에 직접 코드를 추가하려면 다음과 같이 작성하세요.

원칙적으로 범주를 표시하기 위한 코드를 함수 파일에 배치한 다음 템플릿 파일에서 the_category를 my_thecat()이라는 새 함수로 변경할 수 있습니다. 물론, 교체하기 전에 function.php 파일에 적절한 코드를 추가하는 것을 잊지 마세요:

function my_thecat() ( global $post ; foreach ((get_the_category($post -> ID ) ) as $category ) ( echo " cat_ID ) . "" title="" . $category -> cat_name . "">" . $ 카테고리 -> 고양이 이름 . "; " ; ) )

function my_thecat() ( global $post; foreach((get_the_category($post->ID)) as $category) ( echo "cat_ID)."" title="".$category->cat_name."">".$ 카테고리->고양이_이름."; "; ) )

테스트해 보니 모든 것이 작동합니다. 남은 질문은 하나뿐입니다. 이 모든 것이 얼마나 유용하고 필요한가요? 최고의 블로그를 만들고자 하는 일관된 디자인을 갖춘 블로그가 하나 있다면 몇 분 정도 시간을 내어 적절하게 변경할 수 있습니다. 그러한 블로그가 많다면 제목을 조작하는 것이 SEO 측면에서 큰 이점을 가져오지 않을 것이라고 생각합니다. Rotapost에서 이러한 모든 프로젝트에 대한 링크를 구입하는 것이 더 쉽습니다. 그런데 TIC를 높이는 실험은 시스템이 성공적으로 긍정적으로 완료되었으므로 이에 대한 보고가 곧 나올 것입니다.

맞춤 게시물 카테고리 표시

의견은 위의 예가 사용자 정의(사용자) 게시물 유형에 작동하지 않음을 시사합니다. 저는 이 문제가 발생하지 않았으므로 키워드 wordpress 사용자 정의 게시물 유형 표시 카테고리를 사용하여 영어 블로그에서 솔루션을 Google에 검색하거나 사용자 Stinker(댓글에서)의 힌트를 사용하도록 조언할 수 있습니다. 카테고리가 표시되는 곳에 코드를 붙여넣기만 하면 됩니다.

여기서 catgoria_video는 사용자 게시물의 분류(사용자 정의라고도 함)입니다. 이제 어디서, 무엇을 더 자세히 설명합니다. 예를 들어 다음과 같습니다.

// 녹화 유형 비디오 if ( ! function_exists ( "video_cp" ) ) ( function video_cp() ( $labels = array ( "name" => _x( "Video" , "게시물 유형 일반 이름" , "video" ) , "singular_name" => _x ( "Video" , "게시물 유형 단수 이름" , "video" ) , "menu_name" => __( "Video" , "video" ) , "parent_item_colon" => __( "Parent:" , "video" ) , "all_items" => __( "모든 동영상", "동영상" ) , "view_item" => __( "보기" , "동영상" ) , "add_new_item" => __( "새 비디오 추가", "동영상" ) , "add_new" => __( "동영상 추가" , "동영상" ) , "edit_item" => __( "영상을 편집하다", "동영상" ) , "update_item" => __( "동영상 업데이트" , "동영상" ) , "search_items" => __( "동영상 찾기" , "동영상" ) , "not_found" => __( "찾을 수 없음" " , "동영상" ) , "not_found_in_trash" => __( "장바구니에 없습니다", "동영상" ) , ) ; $args = array ( "labels" => $labels , "supports" => array ( "title" , "editor" , "excerpt" , ) , "taxonomies" => array ( "categoria_video" ) , // 아래에 생성할 카테고리(분류라고도 함)"public" => true , "menu_position" => 5 , "menu_icon" => "dashicons-id-alt" , ) ; Register_post_type( "동영상" , $args ) ; ) add_action( "init" , "video_cp" , 0 ) ; // 초기화) if ( ! function_exists ( "categoria_video" ) ) ( // 공석 카테고리 function catgoria_video() ( $labels = 배열 ​​( "이름" => _x( "동영상 카테고리", "분류 일반 이름" , "categoria_video" ) , "singular_name" => _x( "카테고리 영상", "분류 단수 이름" , "categoria_video" ) , "menu_name" => __( "카테고리" , "categoria_video" ) , "all_items" => __( "카테고리" , "categoria_video" ) , "parent_item" => __ ( "상위 카테고리 비디오", "categoria_video" ) , "parent_item_colon" => __( "상위 카테고리 비디오:", "categoria_video" ) , "new_item_name" => __( "새 분류", "categoria_video" ) , "add_new_item" => __( "새 카테고리 추가", "categoria_video" ) , "edit_item" => __( "카테고리 편집", "categoria_video" ) , "update_item" => __( "카테고리 업데이트", "categoria_video" ) , "search_items" => __( "찾기" , "categoria_video" ) , "add_or_remove_items" => __( "카테고리 추가 또는 제거", "categoria_video" ) , "choose_from_most_used" => __( "인기검색", "categoria_video" ) , "not_found" => __( "찾을 수 없음" , "categoria_video" ) , ) ; $args = array ( "labels" => $labels , "hierarchical" => true , "public" => true , ) ; Register_taxonomy( "categoria_video" , 배열 ( "video" ) , $args ) ; ) add_action( "init" , "categoria_video" , 0 ) ; // 초기화 }

// 게시 유형 비디오 if (! function_exists("video_cp")) ( function video_cp() ( $labels = array("name" => _x("Video", "게시 유형 일반 이름", "video"), " singular_name" => _x("동영상", "게시물 유형 단수 이름", "video"), "menu_name" => __("동영상", "동영상"), "parent_item_colon" => __("부모:", "video"), "all_items" => __("모든 비디오", "video"), "view_item" => __("보기", "video"), "add_new_item" => __("새 비디오 추가" , "동영상"), "add_new" => __("동영상 추가", "동영상"), "edit_item" => __("동영상 편집", "동영상"), "update_item" => __("동영상 업데이트 ", "동영상"), "search_items" => __("동영상 찾기", "동영상"), "not_found" => __("찾을 수 없음", "동영상"), "not_found_in_trash" => __("없음 장바구니에 있음", "동영상"),); $args = array("labels" => $labels, "supports" => array("title", "editor", "excerpt",), "taxonomies" = > array("categoria_video"), // 아래에 생성할 카테고리(분류라고도 함) "public" => true, "menu_position" => 5, "menu_icon" => "dashicons-id-alt",); Register_post_type("동영상", $args); ) add_action("init", "video_cp", 0); // 초기화 ) if (!function_exists("categoria_video")) ( // 공석 카테고리 function catgoria_video() ( $labels = array("name" => _x("비디오 카테고리", "분류 일반 이름", "categoria_video "), "singular_name" => _x("카테고리 비디오", "분류 단수 이름", "categoria_video"), "menu_name" => __("카테고리", "categoria_video"), "all_items" => __(" 카테고리", "categoria_video"), "parent_item" => __("상위 카테고리 동영상", "categoria_video"), "parent_item_colon" => __("상위 카테고리 동영상:", "categoria_video"), "new_item_name" => __("새 카테고리", "categoria_video"), "add_new_item" => __("새 카테고리 추가", "categoria_video"), "edit_item" => __("카테고리 편집", "categoria_video"), "update_item" => __("카테고리 업데이트", "categoria_video"), "search_items" => __("찾기", "categoria_video"), "add_or_remove_items" => __("카테고리 추가 또는 제거", "categoria_video"), " choose_from_most_used" => __("인기 검색", "categoria_video"), "not_found" => __("찾을 수 없음", "categoria_video"),); $args = array("labels" => $labels, "hierarchical" => true, "public" => true,); Register_taxonomy("categoria_video", array("video"), $args); ) add_action("init", "categoria_video", 0); // 초기화)

팁을 제공한 Stinker 사용자에게 감사드립니다. 이 정보가 유용할 것입니다.

추신 경비원. Runet 블로그 중 하나에서 우리는 17개의 무료 고품질 템플릿에서 WordPress 포트폴리오 테마의 훌륭한 선택을 발견했습니다.

우리의 먼 조상들은 한때 장거리 메시지를 보내기 위해 비둘기 메일과 메신저 서비스를 사용해야 했습니다. 그러다가 원시적인 전신이 발명되었고, 비슷한 시기에 종이 우편물이 등장했습니다. 그리고 오랫동안 우리는 축하 전보나 엽서를 미리 보내야 했습니다. 그러나 이러한 모든 고풍은 먼 과거의 일입니다. 이제 단 몇 분 만에 가까운 사람과 사랑하는 사람에게 언제든지 휴대폰으로 생일 축하 인사를 음성으로 보낼 수 있습니다!

생일 축하 음성 인사말은 친구와 가족을 위한 최고의 선물입니다.

휴일 아침은 축하와 선물로 시작되어야합니다! 멋진 놀라움으로 사랑하는 사람을 기쁘게 하고 싶지만 어떻게 해야 할지 모르시나요? 당신의 장점과 재능 목록에 보컬이 포함되어 있지 않다면 이른 아침에 전화로 "Happy bezdeyo tu yuuuu"를 부르지 않는 것이 좋습니다. 전화로 생일 인사말을 주문할 수 있습니다. Yotafon과 Lada Kalina를 선물로 받은 푸틴의 멋진 음성 인사말, 용감한 비상 상황부의 만화 장난, 충격적인 Zhirinovsky의 개인 인사말, 불 같은 그루지야어 노래, 패러디, 감동적인 노래를 선택하세요. 우리는 모든 취향에 맞는 어린이와 성인을 위한 생일 축하 인사를 귀하의 휴대폰에 가지고 있습니다!

휴대 전화에서 오디오 생일 축하 인사의 장점

바로 아침부터 불꽃 놀이, 과자, 샴페인, 선물로 생일 소년을 기쁘게하는 것이 항상 가능한 것은 아닙니다. 친구나 가족이 멀리 떨어져 있다면 아침에 평범한 전화 통화로 제한할 수 있습니다. 당신도 이것이 매우 지루하고 구식이라고 생각합니까? 그런 다음 새로운 기술의 가능성을 활용하십시오. 휴대폰으로 생일 축하 인사를 주문하고 기분을 좋게 만드십시오! 그러한 농담이나 음악적 선물은 반드시 생일 소년을 기쁘게 할 것입니다. 그는 당신의 특이한 놀라움에 즐겁게 놀랄 것입니다!

최고의 테마 생일 음성 카드를 선택하세요

음성 카드, SMS 축하 및 전화 장난 서비스에는 농담, 농담 및 음악 작곡의 황금 컬렉션이 포함되어 있습니다. 생일 축하 인사말을 선택할 수 있습니다. 이 사이트에서는 형제자매, 부모님, 친구, 사랑하는 사람, 직원, 이웃을 위한 오디오 선물을 준비했습니다. 모든 생일 인사말은 멋지고 재미있습니다. 열정적인 조지아풍 노래, 유명한 가슴 뛰는 사람 Nikolai Baskov의 패러디, Lev Leshchenko의 감동적인 노래로 생일 소녀를 기쁘게 하고 싶나요? 휴대폰으로 전화할 수 있는 생일 인사말이 준비되어 있습니다!

  • A부터 Z까지 이름으로 생일 축하 음성 인사말이 생일 소년에게 즐거운 축하의 놀라움이 될 것입니다. 그러한 뮤지컬 또는 코믹 인사말은 그를 위해 개인적으로 준비된 것으로 인식됩니다!
  • 조디악 표지판의 음악 카드는 약간 미신적 인 운세 독자를 기쁘게하고 내년 전체에 행운을 가져다 줄 것입니다.
  • 여성의 생일에 대한 음성 인사말은 어머니, 할머니, 교사 또는 여자 친구에게 훌륭한 선물이 될 것입니다.
  • 사랑하는 사람을 위한 유명 인사의 재미있는 엽서는 자신의 감정에 대해 이야기하고 격려하며 긍정적인 분위기를 조성하는 데 도움이 될 것입니다.
  • 자매, 여자친구, 남자친구, 할머니 또는 자녀를 위한 테마 축하를 통해 가장 적합한 개인 선물을 선택할 수 있습니다.
  • 남자의 생일을 음성으로 축하하는 것은 기념일을 맞아 놀라운 놀라움이 될 것이며 좋은 옛 친구나 좋은 친구를 기쁘게 할 것입니다.

우리의 SMS 생일 인사말에는 친절하고 진심 어린 소원이 담겨 있습니다. 사랑하는 사람에게 사랑과 감사를 표현하고 수년간의 강한 우정에 대해 감사를 표할 적절한 단어를 찾는 것이 어렵습니까? 남자 또는 여자를 위해 미리 만들어진 생일 인사말을 선택하고 음성 카드를 보내면 아무 것도 걱정하지 마세요!

사랑하는 사람에게 따뜻함, 보살핌, 긍정적인 감정을 주세요!

지정된 카테고리에서 데이터를 검색합니다.

카테고리에 대한 정보가 포함된 객체를 $category 매개변수에 전달하면 이 데이터가 캐시됩니다.

카테고리 ID를 $category 매개변수에 전달하면 카테고리 데이터는 데이터베이스 또는 캐시(있는 경우)에서 검색됩니다.

get_category와 동일한 get_term() 함수에 유의하세요. 도움을 받으면 카테고리와 다른 분류법에서 데이터를 얻을 수 있습니다.

✈ 1회 = 0.000443초 = 빠른| 50000회 = 0.92초 = 매우 빠르다| PHP 7.0.5, WP 4.5.1

후크가 없습니다.

용법

$cat = get_category($category, $output, $filter); $category (번호) (필수)카테고리에 대한 데이터가 포함된 카테고리 ID 또는 개체입니다.
기본값: 아니요$출력 (끊임없는)

데이터를 반환할 배열 유형:

  • 개체 - 개체;
  • ARRAY_A - 연관 배열;
  • ARRAY_N - 인덱스 배열입니다.

기본값: 객체

$filter (선)필터(정확히 어떤 필터인지는 모르겠습니다.)
기본값: "원시"

#1. 우리가 위치한 페이지(현재)에 카테고리의 데이터를 표시해 보겠습니다.

$thisCat = get_category(get_query_var("cat")); print_r($thisCat);

결과적으로 다음과 같은 내용을 볼 수 있습니다.

StdClass 객체( => 85 => 범주 이름 => 범주 이름 => 0 => 85 => 범주 => => 70 => 0 => 85 => 0 => => 범주 이름 => 범주 이름 = > 70)