Dismiss Notice

Chào bạn!

Hãy đăng nhập diễn đàn nopViet.com để thảo luận và nhận thông tin mới nhất về nopCommerce nhé.

Đăng nhập bằng Facebook

Tùy chỉnh menu và ACL menu trong giao diện Admin

Thảo luận trong 'TUT nopCommerce' bắt đầu bởi An Nguyen, 28/1/16.

  1. An Nguyen

    An Nguyen bụi Staff Member

    Bài viết:
    286
    Điểm:
    28
    Nơi ở:
    Biên Hòa
    Trang chủ:
    Tình hình là mình mới nghiên cứu cách tùy chỉnh menu trong giao diện Admin của nopCommerce. Chủ yếu thêm vài quick link để truy cập nhanh các chức năng thường xài (ví dụ như tùy chỉnh tỷ giá tiền tệ, việt hóa...) 2016-01-28_223800.png
    Đầu tiên mở file Administration/sitemap.config
    Đây là các code của mình thêm vào, nằm sau menu help nhé
    HTML:
      
    <siteMapNode nopResource="Quick Link" ImageUrl="~/Administration/Content/images/link.png">
                <siteMapNode nopResource="Link 1" url="http://nopviet.com/index.php"/>
                <siteMapNode nopResource="Link 2" >
                    <siteMapNode nopResource="Sub Link 2" url="http://nopviet.com/index.php"/>
                </siteMapNode>
                <siteMapNode nopResource="Currency Vietnam" url="~/Admin/Currency/Edit/1"/>
                <siteMapNode nopResource="Language Vietnam" url="~/Admin/Language/Resources?languageId=1"/>
            </siteMapNode>
    Trong đó: ImageUrl là icon menu

    Một số tùy chỉnh menu khác:
    1.Tùy chỉnh ẩn menu dựa theo vai trò người dùng

    - Trong file sitemap.config có thuộc tính PermissionNames để thêm quyền truy cập menu vào ACL (Access Control List), dưới đây là tùy chỉnh của mình đối với menu Quick Link
    HTML:
      
    <siteMapNode nopResource="Quick Link" PermissionNames="quicklink">
                <siteMapNode nopResource="Link 1" PermissionNames="link1" url="http://nopviet.com/index.php"/>
                <siteMapNode nopResource="Link 2" PermissionNames="link2" >
                    <siteMapNode nopResource="Sub Link 2" url="http://nopviet.com/index.php"/>
                </siteMapNode>
                <siteMapNode nopResource="Currency Vietnam" PermissionNames="link3" url="~/Admin/Currency/Edit/1"/>
                <siteMapNode nopResource="Language Vietnam" PermissionNames="link3" url="~/Admin/Language/Resources?languageId=1"/>
            </siteMapNode>
    
    Có thể thiết lập nhiều menu có chung 1 PermissionNames (như link3 ở trên)

    - Mở database và thêm vào các cột như sau vào table PermissionRecord
    Định dạng như sau:
    Name: Admin area. Manage Quick Link
    SystemName: quicklink
    Category: Configuration

    2016-01-29_000632.png

    - Sau khi thực hiện xong bước trên, menu Quick Link sẽ tự động tắt
    Vào menu Configuration > Access Control List sẽ thấy thêm 4 tùy chọn, bật hoặc tắt các menu theo vai trò người dùng.

    acl.png

    Xong, bây giờ thử test bật tắt menu nào
    Ẩn menu SystemName là link3
    2016-01-29_001847.png
    Hiện tất cả menu
    2016-01-29_001931.png

    2. Thêm các button truy cập nhanh dưới thanh menu (status bar)
    quickbar.png

    Tạo 1 file html chứa các button tại Administration\Views\Shared\_QuickBar.cshtml với nội dung
    HTML:
    <div class="quickbar">
      <a href="~/Admin/Product/Create">Add Product</a>
      <a href="~/Admin/Category/Create">Add Category</a>
    </div>
    <style>
    .quickbar {display:inline; margin-left: 10px;}
    .quickbar a {
        display: inline-block;
        padding: 5px;
        background: #F0F0F5;
        margin: 0 5px;
        border: 1px solid #ddd;
        border-radius: 4px;
        color:#333;
    }
    .quickbar a:hover {background-color: #E9E9E9;color:#FF3300; text-decoration: none;}
    .quickbar a:before {
        content: "+";
        padding-right: 4px;
    } 
    </style>
    
    Sau đó chèn file này vào nội dung Administration\Views\Shared\_AdminLayout.cshtml
    Tìm dòng
    PHP:
    <div class="status-bar">
                            @(
    EngineContext.Current.Resolve<Nop.Services.Helpers.IDateTimeHelper>().ConvertToUserTime(DateTime.Now).ToString("f"))
    </
    div>
    Thêm vào trong đoạn mã div như sau
    PHP:
    <div class="status-bar">
                            @(
    EngineContext.Current.Resolve<Nop.Services.Helpers.IDateTimeHelper>().ConvertToUserTime(DateTime.Now).ToString("f"))
    @
    Html.Partial("_QuickBar")
    </
    div>
    Vậy là xong, các bạn có thể thêm các nút truy cập nhanh khác như Add Topic, Add News, Add Blog...

    Chúc các bạn vui vẻ :D
     
    Sửa lần cuối: 17/2/16
    Tags:
    kju47 thích bài này.
  2. Đang tải...

    Chủ đề liên quan Diễn đàn Date
    Tùy chỉnh số lượng và sắp xếp Feature Product trên homepage Thảo luận chung về NOP 18/1/16
    Tùy chỉnh nop 3.5 thành website bán điện thoại Thảo luận chung về NOP 25/3/15
    Tùy chỉnh nop 2.65 thành website bán vé máy bay Thảo luận chung về NOP 28/9/12

  3. kju47

    kju47 NopNew

    Bài viết:
    14
    Điểm:
    3
    Trang chủ:
    đang cần tìm ^^
     
    An Nguyen thích bài này.
Draft saved Draft deleted
Tags:

Chia sẻ trang này

Đang tải...