Mỗi người đều là chuyên gia trong lịnh vực bạn đam mê ! Đăng ký và cùng chia sẻ kiến thức nào
0 votes
1.1k views
in Công nghệ by Editor (3.1k points)

Khi sử dụng Q2A xây dựng trang hỏi đáp, có những bài viết chứa hình ảnh. Muốn hiện ảnh thumnail thì phải làm thế nào?

Please log in or register to answer this question.

1 Answer

+1 vote
by Editor (5.1k points)
edited by

 Vì trong các câu hỏi, thường có kèm ảnh ( ảnh từ website khác hoặc hình ảnh đính kèm ), để hiện lên ảnh thumbnail ở ngay danh sách câu hỏi / trả lời cần thực hiện chỉnh code giao diện như sau:

1. Sửa file qa-theme/tên-theme-dang-dung/qa-theme.php

Tìm từ:

public function attribution()

Thêm bên trên đó:

// new thumb
     public function q_list($q_list)
{

    if (!empty($q_list['qs'])) { // first check it is not an empty list and the feature is turned on
        // Collect the question ids of all items in the question list (so we can do this in one DB query)
        $postids = array();
        foreach ($q_list['qs'] as $question)
        {
            if (isset($question['raw']['postid']))
                $postids[] = $question['raw']['postid'];
        }

        if (!empty($postids)) {

            // Retrieve the content for these questions from the database and put into an array fetching
            // the minimal amount of characters needed to determine the string should be shortened or not

            $result   = qa_db_query_sub('SELECT postid, content, format FROM ^posts WHERE postid IN (#)', $postids);
            $postinfo = qa_db_read_all_assoc($result, 'postid');

            // Get the regular expression fragment to use for blocked words and the maximum length of content to show
            $blockwordspreg = qa_get_block_words_preg();

            // Now add the popup to the title for each question
            foreach ($q_list['qs'] as $index => $question)
            {
                if (isset($postinfo[$question['raw']['postid']])) {
                    $thispost = $postinfo[$question['raw']['postid']];
                    $text     = qa_viewer_html($thispost['content'], $thispost['format'], array('blockwordspreg' => $blockwordspreg));

                    // Extract image source from content
                    preg_match_all('/<img[^>]+src=[\'"]([^\'"]+)[\'"][^>]*>/i', $text, $matches);

                    // If content has image than show it!
                    if (!empty($matches[0])) {

                        // assign image to the variable
                        $image                           = '<img src="' . $matches[1][0] . '" alt="image" class="q-list-image" width="50"/>'; // change the size using attr or css
                        $q_list['qs'][$index]['content'] = $image;
                    }
                }
            }
        }
    }

    qa_html_theme_base::q_list($q_list);
}
   // end thumb @netdepviet

Save lại rồi upload lên server & tinh chỉnh lại phần CSS cho hợp lý là đẹp rồi.

Sponsors


Vietbeauty Community
Netdepviet Wiki là nơi hỏi-đáp, chia sẻ kiến thức và mọi mặt cuộc sống.
Xem thêm trợ giúp

88 questions

90 answers

4 comments

34 users

ADVERTISEMENT

Since © 2006 Netdepviet.org All rights reserved. Home | Privacy Policy | Pictures
...