سؤال

لقد قمت بتنفيذ بحث موقع Google / البحث المخصص لموقع الويب الخاص بي وكل شيء يعمل وتم تنسيق النتائج وترحيل الصفحات بشكل جيد.ولكنها لا تُرجع أبدًا عدد النتائج التي عثرت عليها كما تفعل عند البحث على Google About 1,660,000 results (0.16 seconds)

كنت أتساءل عما إذا كان أي شخص قد وجد أي شيء للقيام بذلك، ولم أجد أي شيء في الوثائق هناك.

<div id="cse" style="width: 100%;">Loading</div>
        <script src="http://www.google.com/jsapi" type="text/javascript"></script>
        <script type="text/javascript">
            google.load('search', '1', {language : 'en'});
            google.setOnLoadCallback(function() {
                var customSearchControl = new google.search.CustomSearchControl('GOOGLEIDGOESHERE');
                customSearchControl.setResultSetSize(google.search.Search.FILTERED_CSE_RESULTSET);
                customSearchControl.setNoResultsString("No results found.")
                customSearchControl.draw('cse');   
            }, true);
</script>
<link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" />
هل كانت مفيدة؟

المحلول

ستحتاج إلى استخدام SearchCompleteCallback ودفنه عميقًا داخل مكتبة جافا سكريبت المبهمة، وستجد الخاصية المقدرةResultCount.فيما يلي مثال سريع ينبثق به تنبيه مع العدد.يمكنك تخصيص هذا لتلبية احتياجاتك باستخدام jquery لإدراج بعض صفحات html مع العدد بأي تنسيق تريده.

<div id="cse" style="width: 100%;">Loading</div>
<script src="http://www.google.com/jsapi" type="text/javascript"></script>
<script type="text/javascript">

google.load('search', '1', {language : 'en'});
google.setOnLoadCallback(function() {
    var customSearchControl = new google.search.CustomSearchControl('GOOGLEIDGOESHERE');
    customSearchControl.setResultSetSize(google.search.Search.FILTERED_CSE_RESULTSET);
    customSearchControl.setNoResultsString("No results  found.")
    customSearchControl.setSearchCompleteCallback(null, 
        function() { searchCompleteCallback(customSearchControl) });

    customSearchControl.draw('cse');   
}, true);


function searchCompleteCallback(customSearchControl) {

  alert(customSearchControl.e[0].g.cursor.estimatedResultCount);

}
</script>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top