[xin hướng dẫn] Giới hạn chữ ở block new new

Thảo luận trong 'Blocks' đăng bởi ductrung, 29/07/2016 11:11.

  • Em ngồi tách cả chiều đc cái bglobal.block_news_new mà giờ muốn giới hạn chữ trên block mà chưa rõ lắm, anh chị em nào biết chỉnh giúp e với anh, em cảm ơn nhiều

    em có đính kém tệp đó 

     

    Tệp đính kèm:

  • <?php
    
    /**
     * @Project NUKEVIET 4.x
     * @Author Mr.Thinh (thinhwebhp@gmail.com)
     * @Copyright (C) 2014 Thinhweb.com. All rights reserved
     * @License GNU/GPL version 2 or any later version
     * @Createdate Sat, 10 Dec 2011 06:46:54 GMT
     */
    
    if (! defined('NV_MAINFILE')) {
        die('Stop!!!');
    }
    
    if (! nv_function_exists('nv_block_news_new')) {
        function nv_block_config_news_new($module, $data_block, $lang_block)
        {
            global $nv_Cache, $site_mods;
    
            $html_input = '';
            $html = '';
            $html .= '<tr>';
            $html .= '<td>' . $lang_block['numrow'] . '</td>';
            $html .= '<td><input type="text" class="form-control w200" name="config_numrow" size="5" value="' . $data_block['numrow'] . '"/></td>';
            $html .= '</tr>';
    
    		$html .= '<tr>';
            $html .= '<td>' . $lang_block['title_length'] . '</td>';
            $html .= '<td><input type="text" class="form-control w200" name="config_title_length" size="5" value="' . $data_block['title_length'] . '"/></td>';
            $html .= '</tr>';
    
    		$html .= '<tr>';
            $html .= '<td>' . $lang_block['hometext_length'] . '</td>';
            $html .= '<td><input type="text" class="form-control w200" name="config_hometext_length" size="5" value="' . $data_block['hometext_length'] . '"/></td>';
            $html .= '</tr>';
    
            return $html;
        }
    
        function nv_block_config_news_new_submit($module, $lang_block)
        {
            global $nv_Request;
            $return = array();
            $return['error'] = array();
            $return['config'] = array();
            $return['config']['numrow'] = $nv_Request->get_int('config_numrow', 'post', 0);
            $return['config']['title_length'] = $nv_Request->get_int('config_title_length', 'post', 0);
            $return['config']['hometext_length'] = $nv_Request->get_int('config_hometext_length', 'post', 0);
            return $return;
        }
    
        function nv_block_news_new($block_config)
        {
            global $module_array_cat, $module_info, $site_mods, $module_config, $global_config, $nv_Cache, $db;
            $module = $block_config['module'];
            $show_no_image = $module_config[$module]['show_no_image'];
            $blockwidth = $module_config[$module]['blockwidth'];
    
            $db->sqlreset()
                ->select('id, catid, title, alias, homeimgfile, homeimgthumb, hometext, publtime')
                ->from(NV_PREFIXLANG . '_' . $site_mods[$module]['module_data'] . '_rows')
                ->where('status= 1')
                ->order('rand() ASC')
                ->limit($block_config['numrow']);
    
            $list = $nv_Cache->db($db->sql(), '', $module);
    
            if (! empty($list)) {
                if (file_exists(NV_ROOTDIR . '/themes/' . $global_config['module_theme'] . '/modules/news/global.block_news_new.tpl')) {
                    $block_theme = $global_config['module_theme'];
                } else {
                    $block_theme = 'default';
                }
                $xtpl = new XTemplate('global.block_news_new.tpl', NV_ROOTDIR . '/themes/' . $block_theme . '/modules/news');
                $xtpl->assign('NV_BASE_SITEURL', NV_BASE_SITEURL);
                $xtpl->assign('TEMPLATE', $block_theme);
    
                foreach ($list as $l) {
                    $l['link'] = NV_BASE_SITEURL . 'index.php?' . NV_LANG_VARIABLE . '=' . NV_LANG_DATA . '&amp;' . NV_NAME_VARIABLE . '=' . $module . '&amp;' . NV_OP_VARIABLE . '=' . $module_array_cat[$l['catid']]['alias'] . '/' . $l['alias'] . '-' . $l['id'] . $global_config['rewrite_exturl'];
                    if ($l['homeimgthumb'] == 1) {
                        $l['thumb'] = NV_BASE_SITEURL . NV_FILES_DIR . '/' . $site_mods[$module]['module_upload'] . '/' . $l['homeimgfile'];
                    } elseif ($l['homeimgthumb'] == 2) {
                        $l['thumb'] = NV_BASE_SITEURL . NV_UPLOADS_DIR . '/' . $site_mods[$module]['module_upload'] . '/' . $l['homeimgfile'];
                    } elseif ($l['homeimgthumb'] == 3) {
                        $l['thumb'] = $l['homeimgfile'];
                    } elseif (! empty($show_no_image)) {
                        $l['thumb'] = NV_BASE_SITEURL . $show_no_image;
                    } else {
                        $l['thumb'] = '';
                    }
    
                    $l['blockwidth'] = $blockwidth;
    
    				$l['title60'] = nv_clean60($l['title'], $block_config['title_length'], true);
    
                    $l['hometext'] = nv_clean60($l['hometext'], $block_config['hometext_length'], true);
    
                    $xtpl->assign('ROW', $l);
                    if (! empty($l['thumb'])) {
                        $xtpl->parse('main.loop.img');
                    }
                    $xtpl->parse('main.loop');
                }
                $xtpl->parse('main');
                return $xtpl->text('main');
            }
        }
    }
    if (defined('NV_SYSTEM')) {
        global $site_mods, $module_name, $global_array_cat, $module_array_cat, $nv_Cache, $db;
        $module = $block_config['module'];
        if (isset($site_mods[$module])) {
            if ($module == $module_name) {
                $module_array_cat = $global_array_cat;
                unset($module_array_cat[0]);
            } else {
                $module_array_cat = array();
                $sql = 'SELECT catid, parentid, title, alias, viewcat, subcatid, numlinks, description, inhome, keywords, groups_view FROM ' . NV_PREFIXLANG . '_' . $site_mods[$module]['module_data'] . '_cat ORDER BY sort ASC';
                $list = $nv_Cache->db($sql, 'catid', $module);
                foreach ($list as $l) {
                    $module_array_cat[$l['catid']] = $l;
                    $module_array_cat[$l['catid']]['link'] = NV_BASE_SITEURL . 'index.php?' . NV_LANG_VARIABLE . '=' . NV_LANG_DATA . '&amp;' . NV_NAME_VARIABLE . '=' . $module . '&amp;' . NV_OP_VARIABLE . '=' . $l['alias'];
                }
            }
            $content = nv_block_news_new($block_config);
        }
    }

    File php đó à

     
  • $l['title60'] = nv_clean60($l['title'], $block_config['title_length'], true);
    $l['hometext'] = nv_clean60($l['hometext'], $block_config['hometext_length'], true);
    
    

    Vậy muốn cắt chữ xuất ra thì xuất {ROW.title60}  và {ROW.hometext} cho file tpl

     

     
  • đã xong, cảm ơn nhím

     
  • bác có thể hướng dẫn cho  mình là chỉnh ntnao được không?

     

Chia sẻ trang này

Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây